metron-config
Copyright 2006-2016 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

This product includes Font Awesome 4.6.3 (http://fortawesome.github.com/Font-Awesome - SIL OFL 1.1)
Copyright (c) 2013 Dave Gandy

This product includes Ace (Ajax.org Cloud9 Editor) (http://github.com/ajaxorg/ace - http://github.com/ajaxorg/ace/blob/master/LICENSE)
Copyright (c) 2010, Ajax.org B.V.

This product includes Angular Common/Compiler/Core/Forms/Http/Router 4.3.2 (https://github.com/angular/angular - MIT)
Copyright (c) 2014-2017 Google, Inc. http://angular.io

This product includes Ace Builds 1.2.8 (https://github.com/ajaxorg/ace-builds - BSD)
Copyright (c) 2010, Ajax.org B.V.

This product includes Bootstrap 4.0.0 (https://github.com/twbs/bootstrap - MIT)
Copyright (c) 2011-2017 Twitter, Inc.
Copyright (c) 2011-2017 The Bootstrap Authors

This product includes core-js 2.4.1 (https://github.com/zloirock/core-js - MIT)
Copyright (c) 2014-2016 Denis Pushkarev

This product includes jquery 3.2.1 (https://github.com/jquery/jquery - MIT)
Copyright JS Foundation and other contributors, https://js.foundation/

This product includes symbol-observable 1.0.4 (https://github.com/blesh/symbol-observable - MIT)
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Copyright (c) Ben Lesh <ben@benlesh.com>

This product includes tether 1.4.0 (https://github.com/HubSpot/tether - MIT)
Copyright (c) 2014-2017 HubSpot, Inc.

This product includes zone.js 0.8.16 (http://fortawesome.github.com/Font-Awesome - SIL OFL 1.1)
Copyright (c) 2016 Google, Inc.

This product includes types jasmine/jquery 2.2.30 (https://github.com/DefinitelyTyped/DefinitelyTyped- MIT)
Copyrights are respective of each contributor listed at the beginning of each definition file.
