Notice: |

  Apache Brooklyn
  Copyright 2014-2020 The Apache Software Foundation

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


Bundled dependencies:

  # This software distribution includes the following bundled third-party components.
  # Referenced licenses can be found in the accompanying LICENSE file.

  "@uirouter/core@5.0.20": 
    Project:      "@uirouter/core (NodeJS module)"
    Version:      5.0.20
    Available at: 
      - https://github.com/ui-router/core
      - https://ui-router.github.io
    License name: MIT License
    Notice:       Copyright (c) 2013-2015 The AngularUI Team, Karsten Sperling
  
  angular-animate@1.7.2: 
    Project:      angular-animate (NodeJS module)
    Version:      1.7.2
    Available at: 
      - http://angularjs.org
      - https://github.com/angular/angular.js
    Developed by: Angular Core Team (angular-core+npm@google.com)
    License name: MIT License
    Notice:       Copyright (c) 2016 Angular
  
  angular-cookies@1.7.2: 
    Project:      angular-cookies (NodeJS module)
    Version:      1.7.2
    Available at: 
      - http://angularjs.org
      - https://github.com/angular/angular.js
    Developed by: Angular Core Team (angular-core+npm@google.com)
    License name: MIT License
    Notice:       Copyright (c) 2016 Angular
  
  angular-java-stack-viewer@1.0.1: 
    Project:      angular-java-stack-viewer (NodeJS module)
    Version:      1.0.1
    Available at: https://github.com/tbouron/angular-java-stack-viewer
    Developed by: Thomas Bouron
    License name: Apache License, version 2.0
  
  angular-multiple-transclusion@1.0.0: 
    Project:      angular-multiple-transclusion (NodeJS module)
    Version:      1.0.0
    Available at: https://github.com/mcasimir/angular-multiple-transclusion
    Developed by: mcasimir (https://github.com/mcasimir)
    License name: MIT License
  
  angular-resource@1.7.2: 
    Project:      angular-resource (NodeJS module)
    Version:      1.7.2
    Available at: 
      - http://angularjs.org
      - https://github.com/angular/angular.js
    Developed by: Angular Core Team (angular-core+npm@google.com)
    License name: MIT License
    Notice:       Copyright (c) 2016 Angular
  
  angular-sanitize@1.7.2: 
    Project:      angular-sanitize (NodeJS module)
    Version:      1.7.2
    Available at: 
      - http://angularjs.org
      - https://github.com/angular/angular.js
    Developed by: Angular Core Team (angular-core+npm@google.com)
    License name: MIT License
    Notice:       Copyright (c) 2016 Angular
  
  angular-ui-bootstrap@2.5.6: 
    Project:      angular-ui-bootstrap (NodeJS module)
    Version:      2.5.6
    Available at: 
      - http://angular-ui.github.io/bootstrap/
      - https://github.com/angular-ui/bootstrap
    Developed by: https://github.com/angular-ui/bootstrap/graphs/contributors
    License name: MIT License
    Notice:       Copyright (c) 2012-2017 the AngularUI Team, https://github.com/organizations/angular-ui/teams/291112
  
  angular-ui-router@0.3.2: 
    Project:      angular-ui-router (NodeJS module)
    Version:      0.3.2
    Available at: 
      - http://angular-ui.github.com/
      - https://github.com/angular-ui/ui-router
    License name: MIT License
    Notice:       Copyright (c) 2013-2015 The AngularUI Team, Karsten Sperling
  
  angular-ui-router@1.0.19: 
    Project:      angular-ui-router (NodeJS module)
    Version:      1.0.19
    Available at: 
      - https://github.com/angular-ui/ui-router
      - https://ui-router.github.io
    License name: MIT License
    Notice:       Copyright (c) 2013-2018 The AngularUI Team, Karsten Sperling
  
  angular-xeditable@0.4.0: 
    Project:      angular-xeditable (NodeJS module)
    Version:      0.4.0
    Available at: 
      - https://github.com/vitalets/angular-xeditable
      - https://vitalets.github.io/angular-xeditable
    Developed by: Vitaliy Potapov (noginsk@rambler.ru)
    License name: MIT License
    Notice:       Copyright (c) 2015 Vitaliy Potapov
  
  angular@1.7.2: 
    Project:      angular (NodeJS module)
    Version:      1.7.2
    Available at: 
      - http://angularjs.org
      - https://github.com/angular/angular.js
    Developed by: Angular Core Team (angular-core+npm@google.com)
    License name: MIT License
    Notice:       Copyright (c) 2016 Angular
  
  aopalliance:1.0: 
    Project:      AOP alliance
    Version:      1.0
    Available at: http://aopalliance.sourceforge.net
    License name: Public Domain
  
  argparse@1.0.10: 
    Project:      argparse (NodeJS module)
    Version:      1.0.10
    Available at: https://github.com/nodeca/argparse
    License name: MIT License
    Notice:       Copyright (C) 2012 by Vitaly Puzrin
  
  bootstrap@3.3.7: 
    Project:      bootstrap (NodeJS module)
    Version:      3.3.7
    Available at: 
      - http://getbootstrap.com
      - https://github.com/twbs/bootstrap
    Developed by: Twitter, Inc.
    License name: MIT License
    Notice:       Copyright (c) 2011-2016 Twitter, Inc.
  
  ch.qos.logback:1.2.3: 
    Project:      Logback Logging Framework
    Version:      1.2.3
    Available at: http://logback.qos.ch
    Developed by: QOS.ch (http://www.qos.ch)
    License name: Eclipse Public License, version 1.0
  
  clipboard@1.5.16: 
    Project:      clipboard (NodeJS module)
    Version:      1.5.16
    Available at: https://github.com/zenorocha/clipboard.js
    License name: MIT License
  
  codemirror@5.39.2: 
    Project:      codemirror (NodeJS module)
    Version:      5.39.2
    Available at: 
      - http://codemirror.net
      - https://github.com/codemirror/CodeMirror
    License name: MIT License
    Notice:       Copyright (C) 2017 by Marijn Haverbeke <marijnh@gmail.com> and others
  
  com.fasterxml.jackson:2.10.1: 
    Project:      Jackson FasterXML
    Version:      2.10.1
    Available at: 
      - http://github.com/FasterXML/jackson
      - http://wiki.fasterxml.com/JacksonModuleJoda
      - https://github.com/FasterXML/jackson-core
      - https://github.com/FasterXML/jackson-dataformat-xml
      - https://github.com/FasterXML/jackson-dataformats-text
      - https://github.com/FasterXML/jackson-modules-base
      - https://github.com/FasterXML/jackson-modules-java8
    Developed by: FasterXML (http://fasterxml.com/)
    License name: Apache License, version 2.0
  
  com.fasterxml.woodstox.woodstox-core:5.0.3: 
    Project:      Woodstox
    Version:      5.0.3
    Available at: https://github.com/FasterXML/woodstox
    Developed by: FasterXML (http://fasterxml.com)
    License name: Apache License, version 2.0
  
  com.github.mifmif.generex:1.0.2: 
    Project:      Generex
    Version:      1.0.2
    Available at: https://github.com/mifmif/Generex/tree/master
    License name: Apache License, version 2.0
  
  com.google.code.findbugs.jsr305:2.0.1: 
    Project:      FindBugs-jsr305
    Version:      2.0.1
    Available at: http://findbugs.sourceforge.net/
    License name: Apache License, version 2.0
  
  com.google.code.gson:2.5: 
    Project:      Gson
    Version:      2.5
    Available at: https://github.com/google/gson
    Developed by: Google, Inc. (http://www.google.com)
    License name: Apache License, version 2.0
  
  com.google.errorprone.error_prone_annotations:2.1.0: 
    Project:      error-prone annotations
    Version:      2.1.0
    Available at: http://nexus.sonatype.org/oss-repository-hosting.html
    License name: Apache License, version 2.0
  
  com.google.guava:18.0: 
    Project:      "Guava: Google Core Libraries for Java"
    Version:      18.0
    Available at: http://code.google.com/p/guava-libraries
    License name: Apache License, version 2.0
  
  com.google.inject.guice:3.0: 
    Project:      Google Guice
    Version:      3.0
    Available at: http://code.google.com/p/google-guice/
    Developed by: Google, Inc. (http://www.google.com)
    License name: Apache License, version 2.0
  
  com.google.inject:3.0: 
    Project:      Google Guice
    Version:      3.0
    Available at: http://code.google.com/p/google-guice/
    Developed by: Google, Inc. (http://www.google.com)
    License name: Apache License, version 2.0
  
  com.hierynomus.sshj:0.22.0: 
    Project:      sshj
    Version:      0.22.0
    Available at: https://github.com/hierynomus/sshj
    License name: Apache License, version 2.0
  
  com.jamesmurty.utils.java-xmlbuilder:1.1: 
    Project:      java-xmlbuilder
    Version:      1.1
    Available at: https://github.com/jmurty/java-xmlbuilder
    License name: Apache License, version 2.0
  
  com.jayway.jsonpath.json-path:2.4.0: 
    Project:      project ':json-path'
    Version:      2.4.0
    Available at: https://github.com/jayway/JsonPath
    License name: Apache License, version 2.0
  
  com.jcraft.jzlib:1.1.3: 
    Project:      JZlib
    Version:      1.1.3
    Available at: http://www.jcraft.com/jzlib/
    Developed by: jcraft (http://www.jcraft.com/)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2000-2011 ymnk, JCraft,Inc. All rights reserved.
  
  com.jcraft:0.0.9: 
    Project:      JCraft jsch ssh library
    Version:      0.0.9
    Available at: http://www.jcraft.com/jsch-agent-proxy/
    Developed by: JCraft,Inc. (http://www.jcraft.com/)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2011-2012 Atsuhiko Yamanaka, JCraft,Inc.
  
  com.maxmind.db.maxmind-db:1.2.1: 
    Project:      MaxMind DB Reader
    Version:      1.2.1
    Available at: http://dev.maxmind.com/
    Developed by: MaxMind, Inc. (http://www.maxmind.com/)
    License name: Apache License, version 2.0
  
  com.maxmind.geoip2:2.8.0-rc1: 
    Project:      MaxMind GeoIP2 API
    Version:      2.8.0-rc1
    Available at: http://dev.maxmind.com/geoip/geoip2/web-services
    Developed by: MaxMind, Inc. (http://www.maxmind.com/)
    License name: Apache License, version 2.0
  
  com.squareup.okhttp3:3.12.6: 
    Project: 
      - OkHttp
      - OkHttp Logging Interceptor
    Version:      3.12.6
    Available at: https://github.com/square/okhttp
    License name: Apache License, version 2.0
  
  com.squareup.okhttp:2.2.0: 
    Project:      OkHttp
    Version:      2.2.0
    Available at: https://github.com/square/okhttp
    License name: Apache License, version 2.0
    Notice:       Copyright (c) Square, Inc.
  
  com.squareup.okio:1.2.0: 
    Project:      Okio
    Version:      1.2.0
    Available at: https://github.com/square/okio
    License name: Apache License, version 2.0
    Notice:       Copyright (c) Square, Inc.
  
  com.sun.activation.javax.activation:1.2.0: 
    Project:      JavaBeans Activation Framework
    Version:      1.2.0
    Available at: http://java.net/
    Developed by: Oracle (http://www.oracle.com)
    License name: Common Development and Distribution License, version 1.1
  
  com.sun.istack.istack-commons-runtime:3.0.10: 
    Project:      istack common utility code runtime
    Version:      3.0.10
    Available at: https://projects.eclipse.org/projects/ee4j
    Developed by: Eclipse Foundation (https://www.eclipse.org)
    License name: Eclipse Distribution License, version 1.0
  
  com.sun.xml.fastinfoset.FastInfoset:1.2.16: 
    Project:      fastinfoset
    Version:      1.2.16
    Available at: https://projects.eclipse.org/projects/ee4j.jaxb-impl
    Developed by: Eclipse Foundation (https://www.eclipse.org)
    License name: Apache License, version 2.0
  
  com.thoughtworks.xstream:1.4.11.1: 
    Project:      XStream Core
    Version:      1.4.11.1
    Available at: http://x-stream.github.io/
    Developed by: XStream (http://x-stream.github.io)
    License name: BSD 3-Clause (New BSD) License
  
  commander@2.16.0: 
    Project:      commander (NodeJS module)
    Version:      2.16.0
    Available at: https://github.com/tj/commander.js
    Developed by: TJ Holowaychuk (tj@vision-media.ca)
    License name: MIT License
    Notice:       Copyright (c) 2011 TJ Holowaychuk <tj@vision-media.ca>
  
  commons-beanutils:1.9.4: 
    Project:      Apache Commons BeanUtils
    Version:      1.9.4
    Available at: https://commons.apache.org/proper/commons-beanutils/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  commons-codec:1.11: 
    Project:      Apache Commons Codec
    Version:      1.11
    Available at: http://commons.apache.org/proper/commons-codec/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  commons-collections:3.2.2: 
    Project:      Apache Commons Collections
    Version:      3.2.2
    Available at: http://commons.apache.org/collections/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  commons-io:2.4: 
    Project:      Commons IO
    Version:      2.4
    Available at: http://commons.apache.org/io/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  commons-lang:2.4: 
    Project:      Commons Lang
    Version:      2.4
    Available at: http://commons.apache.org/lang/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  commons-logging:1.2: 
    Project:      Apache Commons Logging
    Version:      1.2
    Available at: http://commons.apache.org/proper/commons-logging/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  d3-array@1.2.0: 
    Project:      d3-array (NodeJS module)
    Version:      1.2.0
    Available at: 
      - https://d3js.org/d3-array/
      - https://github.com/d3/d3-array
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-axis@1.0.8: 
    Project:      d3-axis (NodeJS module)
    Version:      1.0.8
    Available at: 
      - https://d3js.org/d3-axis/
      - https://github.com/d3/d3-axis
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-brush@1.0.4: 
    Project:      d3-brush (NodeJS module)
    Version:      1.0.4
    Available at: 
      - https://d3js.org/d3-brush/
      - https://github.com/d3/d3-brush
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-chord@1.0.4: 
    Project:      d3-chord (NodeJS module)
    Version:      1.0.4
    Available at: 
      - https://d3js.org/d3-chord/
      - https://github.com/d3/d3-chord
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-collection@1.0.4: 
    Project:      d3-collection (NodeJS module)
    Version:      1.0.4
    Available at: 
      - https://d3js.org/d3-collection/
      - https://github.com/d3/d3-collection
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016, Mike Bostock. All rights reserved.
  
  d3-color@1.0.3: 
    Project:      d3-color (NodeJS module)
    Version:      1.0.3
    Available at: 
      - https://d3js.org/d3-color/
      - https://github.com/d3/d3-color
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-dispatch@1.0.3: 
    Project:      d3-dispatch (NodeJS module)
    Version:      1.0.3
    Available at: 
      - https://d3js.org/d3-dispatch/
      - https://github.com/d3/d3-dispatch
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-drag@1.1.1: 
    Project:      d3-drag (NodeJS module)
    Version:      1.1.1
    Available at: 
      - https://d3js.org/d3-drag/
      - https://github.com/d3/d3-drag
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-dsv@1.0.5: 
    Project:      d3-dsv (NodeJS module)
    Version:      1.0.5
    Available at: 
      - https://d3js.org/d3-dsv/
      - https://github.com/d3/d3-dsv
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2013-2016 Mike Bostock. All rights reserved.
  
  d3-ease@1.0.3: 
    Project:      d3-ease (NodeJS module)
    Version:      1.0.3
    Available at: 
      - https://d3js.org/d3-ease/
      - https://github.com/d3/d3-ease
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. Copyright 2001 Robert Penner. All rights reserved.
  
  d3-force@1.0.6: 
    Project:      d3-force (NodeJS module)
    Version:      1.0.6
    Available at: 
      - https://d3js.org/d3-force/
      - https://github.com/d3/d3-force
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-format@1.2.0: 
    Project:      d3-format (NodeJS module)
    Version:      1.2.0
    Available at: 
      - https://d3js.org/d3-format/
      - https://github.com/d3/d3-format
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2015 Mike Bostock. All rights reserved.
  
  d3-geo@1.6.4: 
    Project:      d3-geo (NodeJS module)
    Version:      1.6.4
    Available at: 
      - https://d3js.org/d3-geo/
      - https://github.com/d3/d3-geo
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.*
  
  d3-hierarchy@1.1.5: 
    Project:      d3-hierarchy (NodeJS module)
    Version:      1.1.5
    Available at: 
      - https://d3js.org/d3-hierarchy/
      - https://github.com/d3/d3-hierarchy
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-interpolate@1.1.5: 
    Project:      d3-interpolate (NodeJS module)
    Version:      1.1.5
    Available at: 
      - https://d3js.org/d3-interpolate/
      - https://github.com/d3/d3-interpolate
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-path@1.0.5: 
    Project:      d3-path (NodeJS module)
    Version:      1.0.5
    Available at: 
      - https://d3js.org/d3-path/
      - https://github.com/d3/d3-path
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2015-2016 Mike Bostock. All rights reserved.
  
  d3-polygon@1.0.3: 
    Project:      d3-polygon (NodeJS module)
    Version:      1.0.3
    Available at: 
      - https://d3js.org/d3-polygon/
      - https://github.com/d3/d3-polygon
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-quadtree@1.0.3: 
    Project:      d3-quadtree (NodeJS module)
    Version:      1.0.3
    Available at: 
      - https://d3js.org/d3-quadtree/
      - https://github.com/d3/d3-quadtree
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-queue@3.0.7: 
    Project:      d3-queue (NodeJS module)
    Version:      3.0.7
    Available at: 
      - https://d3js.org/d3-queue/
      - https://github.com/d3/d3-queue
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2012-2016, Michael Bostock. All rights reserved.
  
  d3-random@1.1.0: 
    Project:      d3-random (NodeJS module)
    Version:      1.1.0
    Available at: 
      - https://d3js.org/d3-random/
      - https://github.com/d3/d3-random
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-request@1.0.5: 
    Project:      d3-request (NodeJS module)
    Version:      1.0.5
    Available at: 
      - https://d3js.org/d3-request/
      - https://github.com/d3/d3-request
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-scale@1.0.6: 
    Project:      d3-scale (NodeJS module)
    Version:      1.0.6
    Available at: 
      - https://d3js.org/d3-scale/
      - https://github.com/d3/d3-scale
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2015 Mike Bostock. All rights reserved.
  
  d3-selection@1.1.0: 
    Project:      d3-selection (NodeJS module)
    Version:      1.1.0
    Available at: 
      - https://d3js.org/d3-selection/
      - https://github.com/d3/d3-selection
    Developed by: Mike Bostock (https://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2010-2016, Michael Bostock. All rights reserved.
  
  d3-shape@1.2.0: 
    Project:      d3-shape (NodeJS module)
    Version:      1.2.0
    Available at: 
      - https://d3js.org/d3-shape/
      - https://github.com/d3/d3-shape
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2015 Mike Bostock. All rights reserved.
  
  d3-time-format@2.0.5: 
    Project:      d3-time-format (NodeJS module)
    Version:      2.0.5
    Available at: 
      - https://d3js.org/d3-time-format/
      - https://github.com/d3/d3-time-format
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-time@1.0.7: 
    Project:      d3-time (NodeJS module)
    Version:      1.0.7
    Available at: 
      - https://d3js.org/d3-time/
      - https://github.com/d3/d3-time
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-timer@1.0.6: 
    Project:      d3-timer (NodeJS module)
    Version:      1.0.6
    Available at: 
      - https://d3js.org/d3-timer/
      - https://github.com/d3/d3-timer
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3-transition@1.1.0: 
    Project:      d3-transition (NodeJS module)
    Version:      1.1.0
    Available at: 
      - https://d3js.org/d3-transition/
      - https://github.com/d3/d3-transition
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2010-2015, Michael Bostock. All rights reserved.*
  
  d3-voronoi@1.1.2: 
    Project:      d3-voronoi (NodeJS module)
    Version:      1.1.2
    Available at: 
      - https://d3js.org/d3-voronoi/
      - https://github.com/d3/d3-voronoi
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.*
  
  d3-zoom@1.5.0: 
    Project:      d3-zoom (NodeJS module)
    Version:      1.5.0
    Available at: 
      - https://d3js.org/d3-zoom/
      - https://github.com/d3/d3-zoom
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2016 Mike Bostock. All rights reserved.
  
  d3@4.10.0: 
    Project:      d3 (NodeJS module)
    Version:      4.10.0
    Available at: 
      - https://d3js.org
      - https://github.com/d3/d3
    Developed by: Mike Bostock (https://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright 2010-2017 Mike Bostock. All rights reserved.
  
  delegate@3.2.0: 
    Project:      delegate (NodeJS module)
    Version:      3.2.0
    Available at: https://github.com/zenorocha/delegate
    License name: MIT License
  
  dk.brics.automaton:1.11-8: 
    Project:      Automaton
    Version:      1.11-8
    Available at: http://www.brics.dk/automaton/
    License name: BSD 2-Clause (Simplified or FreeBSD) License
  
  encoding@0.1.12: 
    Project:      encoding (NodeJS module)
    Version:      0.1.12
    Available at: https://github.com/andris9/encoding
    Developed by: Andris Reinman
    License name: MIT License
    Notice:       Copyright (c) 2012-2014 Andris Reinman
  
  es6-promise@4.2.4: 
    Project:      es6-promise (NodeJS module)
    Version:      4.2.4
    Available at: https://github.com/stefanpenner/es6-promise
    Developed by: Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)
    License name: MIT License
    Notice:       Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors
  
  esprima@4.0.1: 
    Project:      esprima (NodeJS module)
    Version:      4.0.1
    Available at: 
      - http://esprima.org
      - https://github.com/jquery/esprima
    Developed by: Ariya Hidayat (ariya.hidayat@gmail.com)
    License name: BSD 2-Clause (Simplified or FreeBSD) License
    Notice:       Copyright JS Foundation and other contributors, https://js.foundation/
  
  file-saver@1.3.8: 
    Project:      file-saver (NodeJS module)
    Version:      1.3.8
    Available at: https://github.com/eligrey/FileSaver.js
    Developed by: Eli Grey (me@eligrey.com)
    License name: MIT License
    Notice:       Copyright © 2016 [Eli Grey][1].
  
  font-awesome-fonts: 
    Project:      Font Awesome (fonts)
    Version:      4.5.0
    Available at: http://fontawesome.io/
    Inclusive of: font-awesome/fonts/* cluster.svg
    License name: SIL OFL 1.1
    Notice:       Copyright (c) Dave Gandy (2016)
  
  font-awesome@4.7.0: 
    Project:      font-awesome (NodeJS module)
    Version:      4.7.0
    Available at: 
      - http://fontawesome.io/
      - https://github.com/FortAwesome/Font-Awesome
    Developed by: Dave Gandy (http://twitter.com/davegandy)
    License name: Font Awesome License
  
  github.com/kubernetes/client-go/util/jsonpath: 
    Project:      Go client for Kubernetes
    Available at: github.com/kubernetes/client-go
    License name: Apache License, version 2.0
  
  github.com/urfave/cli: 
    Project:      github.com/urfave/cli
    Available at: https://github.com/urfave/cli
    License name: MIT License
    Notice:       Copyright (c) 2016 Jeremy Saenz & Contributors
  
  golang.org/x/crypto/ssh: 
    Project:      golang.org/x/crypto/ssh
    Available at: https://godoc.org/golang.org/x/crypto/ssh
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2009 The Go Authors. All rights reserved.
  
  good-listener@1.2.2: 
    Project:      good-listener (NodeJS module)
    Version:      1.2.2
    Available at: https://github.com/zenorocha/good-listener
    License name: MIT License
  
  iconv-lite@0.4.23: 
    Project:      iconv-lite (NodeJS module)
    Version:      0.4.23
    Available at: https://github.com/ashtuchkin/iconv-lite
    Developed by: Alexander Shtuchkin (ashtuchkin@gmail.com)
    License name: MIT License
    Notice:       Copyright (c) 2011 Alexander Shtuchkin
  
  identicon.js@1.3.0: 
    Project:      identicon.js (NodeJS module)
    Version:      1.3.0
    Available at: https://github.com/stewartlord/identicon.js
    Developed by: stewardlord
    License name: BSD 2-Clause (Simplified or FreeBSD) License
    Notice:       Copyright (c) 2013, Stewart Lord. All rights reserved.
  
  io.airlift.airline:0.7: 
    Project:      airline
    Version:      0.7
    Available at: https://github.com/airlift/airline
    License name: Apache License, version 2.0
  
  io.cloudsoft.windows:0.9.0: 
    Project: 
      - Java WinRM library
      - WinRM Client
    Version:      0.9.0
    Available at: http://github.com/cloudsoft/winrm4j
    License name: Apache License, version 2.0
  
  io.fabric8.zjsonpatch:0.3.0: 
    Project:      zjsonpatch
    Version:      0.3.0
    Available at: https://github.com/fabric8io/zjsonpatch/
    License name: Apache License, version 2.0
  
  io.fabric8:4.9.0: 
    Project: 
      - "Fabric8 :: Kubernetes :: Java Client"
      - "Fabric8 :: Kubernetes Model"
      - "Fabric8 :: Kubernetes Model :: Common"
      - "Fabric8 :: Openshift :: Java Client"
    Version:      4.9.0
    Available at: http://fabric8.io/
    Developed by: Red Hat (http://redhat.com)
    License name: Apache License, version 2.0
  
  io.swagger:1.5.6: 
    Project: 
      - swagger-annotations
      - swagger-core
      - swagger-jaxrs
      - swagger-models
    Version:      1.5.6
    Available at: https://github.com/swagger-api/swagger-core
    License name: Apache License, version 2.0
  
  is-stream@1.1.0: 
    Project:      is-stream (NodeJS module)
    Version:      1.1.0
    Available at: https://github.com/sindresorhus/is-stream
    Developed by: Sindre Sorhus (sindresorhus.com)
    License name: MIT License
    Notice:       Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
  
  isomorphic-fetch@2.2.1: 
    Project:      isomorphic-fetch (NodeJS module)
    Version:      2.2.1
    Available at: 
      - https://github.com/matthew-andrews/isomorphic-fetch
      - https://github.com/matthew-andrews/isomorphic-fetch/issues
    Developed by: Matt Andrews (matt@mattandre.ws)
    License name: MIT License
    Notice:       Copyright (c) 2015 Matt Andrews
  
  jakarta.activation.jakarta.activation-api:1.2.1: 
    Project:      JavaBeans Activation Framework API jar
    Version:      1.2.1
    Available at: https://github.com/eclipse-ee4j/jaf
    Developed by: Eclipse Foundation (https://www.eclipse.org)
    License name: Eclipse Distribution License, version 1.0
  
  jakarta.ws.rs.jakarta.ws.rs-api:2.1.5: 
    Project:      javax.ws.rs-api
    Version:      2.1.5
    Available at: https://github.com/eclipse-ee4j/jaxrs-api
    Developed by: Eclipse Foundation (https://www.eclipse.org/org/foundation/)
    License name: Eclipse Public License, version 2.0
  
  jakarta.xml.bind.jakarta.xml.bind-api:2.3.2: 
    Project:      jakarta.xml.bind-api
    Version:      2.3.2
    Available at: https://github.com/eclipse-ee4j/jaxb-api
    Developed by: Eclipse Foundation (https://www.eclipse.org)
    License name: Eclipse Distribution License, version 1.0
  
  java-stack-parser@1.0.0: 
    Project:      java-stack-parser (NodeJS module)
    Version:      1.0.0
    Available at: https://github.com/tbouron/java-stack-parser
    Developed by: Thomas Bouron
    License name: Apache License, version 2.0
  
  javax.annotation.javax.annotation-api:1.3.2: 
    Project:      javax.annotation API
    Version:      1.3.2
    Available at: http://jcp.org/en/jsr/detail?id=250
    Developed by: GlassFish Community (https://javaee.github.io/glassfish)
    License name: Common Development and Distribution License, version 1.1
  
  javax.annotation.jsr250-api:1.0: 
    Project:      JSR-250 Common Annotations for the JavaTM Platform
    Version:      1.0
    Available at: https://jcp.org/en/jsr/detail?id=250
    License name: Common Development and Distribution License, version 1.0
  
  javax.inject:1: 
    Project:      javax.inject
    Version:      1
    Available at: http://code.google.com/p/atinject/
    License name: Apache License, version 2.0
  
  javax.servlet.javax.servlet-api:3.1.0: 
    Project:      Java Servlet API
    Version:      3.1.0
    Available at: http://servlet-spec.java.net
    Developed by: GlassFish Community (https://glassfish.dev.java.net)
    License name: Common Development and Distribution License, version 1.1
  
  javax.validation.validation-api:1.1.0.Final: 
    Project:      Bean Validation API
    Version:      1.1.0.Final
    Available at: http://beanvalidation.org/
    License name: Apache License, version 2.0
  
  javax.ws.rs.javax.ws.rs-api:2.1.1: 
    Project:      javax.ws.rs-api
    Version:      2.1.1
    Available at: https://github.com/eclipse-ee4j/jaxrs-api
    Developed by: Eclipse Foundation (https://www.eclipse.org/org/foundation/)
    License name: Common Development and Distribution License, version 1.1
  
  joda-time:2.9.9: 
    Project:      Joda-Time
    Version:      2.9.9
    Available at: http://www.joda.org/joda-time/
    Developed by: Joda.org (http://www.joda.org)
    License name: Apache License, version 2.0
  
  jquery@1.12.4: 
    Project:      jquery (NodeJS module)
    Version:      1.12.4
    Available at: 
      - http://jquery.com
      - https://github.com/jquery/jquery
    Developed by: jQuery Foundation and other contributors (https://github.com/jquery/jquery/blob/1.12-stable/AUTHORS.txt)
    License name: MIT License
    Notice:       Copyright jQuery Foundation and other contributors, https://jquery.org/
  
  js-yaml@3.12.0: 
    Project:      js-yaml (NodeJS module)
    Version:      3.12.0
    Available at: https://github.com/nodeca/js-yaml
    Developed by: Vladimir Zapparov (dervus.grim@gmail.com)
    License name: MIT License
    Notice:       Copyright (C) 2011-2015 by Vitaly Puzrin
  
  jsonschema@1.2.4: 
    Project:      jsonschema (NodeJS module)
    Version:      1.2.4
    Available at: https://github.com/tdegrunt/jsonschema
    Developed by: Tom de Grunt (tom@degrunt.nl)
    License name: MIT License
    Notice:       Copyright (C) 2012-2015 Tom de Grunt <tom@degrunt.nl>
  
  jssha@2.3.1: 
    Project:      jssha (NodeJS module)
    Version:      2.3.1
    Available at: https://github.com/Caligatio/jsSHA
    Developed by: Brian Turek (brian.turek@gmail.com)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2008-2017, Brian Turek. All rights reserved.*
  
  lodash@4.17.10: 
    Project:      lodash (NodeJS module)
    Version:      4.17.10
    Available at: 
      - https://github.com/lodash/lodash
      - https://lodash.com/
    Developed by: John-David Dalton (http://allyoucanleet.com/)
    License name: MIT License
    Notice:       Copyright JS Foundation and other contributors <https://js.foundation/>
  
  misc:logo_icons: 
    Project:      Various logos for third-party projects
    Inclusive of: various *.png and other image files containing logos
    Notice: |
      This software includes logos for third-party components as icons
      where those components are blueprinted or otherwise referenced.
      These logo files are used under fair use and all copyright and trademark rights
      remain with the owner(s) of the respective components.
  
  moment@2.22.2: 
    Project:      moment (NodeJS module)
    Version:      2.22.2
    Available at: 
      - http://momentjs.com
      - https://github.com/moment/moment
    Developed by: Iskren Ivov Chernev (https://github.com/ichernev)
    License name: MIT License
    Notice:       Copyright (c) JS Foundation and other contributors
  
  net.i2p.crypto.eddsa:0.1.0: 
    Project:      ed25519-java
    Version:      0.1.0
    Available at: https://github.com/str4d/ed25519-java
    License name: Public Domain
  
  net.iharder.base64:2.3.8: 
    Project:      base64
    Version:      2.3.8
    Available at: http://iharder.net/base64/
    License name: Public Domain
  
  net.java.dev.jna:5.5.0: 
    Project: 
      - Java Native Access
      - Java Native Access Platform
    Version:      5.5.0
    Available at: https://github.com/java-native-access/jna
    License name: Apache License, version 2.0
  
  net.minidev.accessors-smart:1.2: 
    Project:      ASM based accessors helper used by json-smart
    Version:      1.2
    Available at: http://www.minidev.net/
    Developed by: Chemouni Uriel (http://www.minidev.net/)
    License name: Apache License, version 2.0
  
  net.minidev.json-smart:2.3: 
    Project:      JSON Small and Fast Parser
    Version:      2.3
    Available at: http://www.minidev.net/
    Developed by: Chemouni Uriel (http://www.minidev.net/)
    License name: Apache License, version 2.0
  
  ngclipboard@1.1.2: 
    Project:      ngclipboard (NodeJS module)
    Version:      1.1.2
    Available at: https://github.com/sachinchoolur/ngclipboard
    Developed by: Sachin (https://github.com/sachinchoolur)
    License name: MIT License
    Notice:       Copyright (c) 2015 Sachin N
  
  node-fetch@1.7.3: 
    Project:      node-fetch (NodeJS module)
    Version:      1.7.3
    Available at: https://github.com/bitinn/node-fetch
    Developed by: David Frank
    License name: MIT License
    Notice:       Copyright (c) 2016 David Frank
  
  normalizr@2.3.1: 
    Project:      normalizr (NodeJS module)
    Version:      2.3.1
    Available at: https://github.com/paularmstrong/normalizr
    Developed by: Dan Abramov
    License name: MIT License
    Notice:       Copyright (c) 2014 Dan Abramov
  
  noun-project-icons: 
    Project:      The Noun Project (icons)
    Available at: https://thenounproject.com/
    Inclusive of: service-restarter.png, autoscaler.png, and others
    License name: Creative Commons Public License, Attribution 3.0
    Notice:       Includes icons by Evan Shuster, Sarah Joy, Jack Zwanenburg
  
  org.apache.commons.commons-compress:1.20: 
    Project:      Apache Commons Compress
    Version:      1.20
    Available at: https://commons.apache.org/proper/commons-compress/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.commons.commons-lang3:3.3.2: 
    Project:      Apache Commons Lang
    Version:      3.3.2
    Available at: http://commons.apache.org/proper/commons-lang/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.cxf:3.3.5: 
    Project:      Apache CXF
    Version:      3.3.5
    Available at: https://cxf.apache.org
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.felix.org.apache.felix.configadmin:1.9.16: 
    Project:      Apache Felix Configuration Admin Service
    Version:      1.9.16
    Available at: http://felix.apache.org/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.felix.org.apache.felix.fileinstall:3.6.4: 
    Project:      Apache Felix File Install
    Version:      3.6.4
    Available at: http://felix.apache.org/site/apache-felix-file-install.html
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.felix.org.apache.felix.framework:5.6.12: 
    Project:      Apache Felix Framework
    Version:      5.6.12
    Available at: http://felix.apache.org/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.felix.org.apache.felix.utils:1.11.2: 
    Project:      Apache Felix Utils
    Version:      1.11.2
    Available at: http://felix.apache.org/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.geronimo.specs.geronimo-stax-api_1.0_spec:1.0.1: 
    Project:      Streaming API for XML (STAX API 1.0)
    Version:      1.0.1
    Available at: http://geronimo.apache.org/specs/geronimo-stax-api_1.0_spec
    Developed by: Apache Software Foundation (http://www.apache.org)
    License name: Apache License, version 2.0
  
  org.apache.geronimo.specs.geronimo-ws-metadata_2.0_spec:1.1.3: 
    Project:      Web Services Metadata 2.0
    Version:      1.1.3
    Available at: http://geronimo.apache.org/maven/specs/geronimo-ws-metadata_2.0_spec/1.1.3
    Developed by: The Apache Software Foundation (http://www.apache.org)
    License name: Apache License, version 2.0
  
  org.apache.geronimo.specs:1.1: 
    Project: 
      - Activation 1.1
      - SAAJ 1.3
    Version:      1.1
    Available at: 
      - http://geronimo.apache.org/maven/specs/geronimo-activation_1.1_spec/1.1
      - http://geronimo.apache.org/maven/specs/geronimo-saaj_1.3_spec/1.1
    Developed by: The Apache Software Foundation (http://www.apache.org)
    License name: Apache License, version 2.0
  
  org.apache.geronimo.specs:1.2: 
    Project: 
      - Apache Geronimo JAX-WS Spec 2.2
      - Apache Geronimo STAX Spec 1.2
    Version:      1.2
    Available at: 
      - http://geronimo.apache.org/maven/specs/geronimo-jaxws_2.2_spec/1.2
      - http://geronimo.apache.org/maven/specs/geronimo-stax-api_1.2_spec/1.2
    Developed by: The Apache Software Foundation (http://www.apache.org)
    License name: Apache License, version 2.0
  
  org.apache.httpcomponents.httpasyncclient:4.1.4: 
    Project:      Apache HttpAsyncClient
    Version:      4.1.4
    Available at: http://hc.apache.org/httpcomponents-asyncclient
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.httpcomponents.httpclient:4.5.10: 
    Project:      Apache HttpClient
    Version:      4.5.10
    Available at: http://hc.apache.org/httpcomponents-client-ga
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.httpcomponents:4.4.12: 
    Project: 
      - Apache HttpCore
      - Apache HttpCore NIO
    Version:      4.4.12
    Available at: http://hc.apache.org/httpcomponents-core-ga
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.jclouds:2.1.2: 
    Project:      Apache jclouds
    Version:      2.1.2
    Available at: http://jclouds.apache.org/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.karaf:4.2.8: 
    Project: 
      - "Apache Karaf :: Assemblies :: Features :: Base"
      - "Apache Karaf :: Assemblies :: Features :: Framework"
      - "Apache Karaf :: Assemblies :: Features :: Standard"
      - "Apache Karaf :: Client"
      - "Apache Karaf :: Diagnostic :: Boot"
      - "Apache Karaf :: Features :: Core"
      - "Apache Karaf :: Features :: Extension"
      - "Apache Karaf :: JAAS :: Boot"
      - "Apache Karaf :: Main"
      - "Apache Karaf :: Shell :: Core"
      - "Apache Karaf :: Specs :: Activator"
      - "Apache Karaf :: Specs :: Java Xml"
      - "Apache Karaf :: Specs :: Java Xml WS"
      - "Apache Karaf :: Specs :: Locator"
      - "Apache Karaf :: Util"
    Version:      4.2.8
    Available at: https://www.apache.org/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.maven.resolver:1.3.1: 
    Project: 
      - Maven Artifact Resolver API
      - Maven Artifact Resolver Implementation
      - Maven Artifact Resolver SPI
      - Maven Artifact Resolver Utilities
    Version:      1.3.1
    Available at: https://maven.apache.org/resolver/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.neethi:3.1.1: 
    Project:      Apache Neethi
    Version:      3.1.1
    Available at: http://ws.apache.org/neethi/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.servicemix.specs:2.9.0: 
    Project: 
      - "Apache ServiceMix :: Specs :: Activation API 1.4"
      - "Apache ServiceMix :: Specs :: Activator"
      - "Apache ServiceMix :: Specs :: JAXB API 2.2"
      - "Apache ServiceMix :: Specs :: Stax API 1.0"
    Version:      2.9.0
    Available at: http://servicemix.apache.org/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.sshd.sshd-core:1.7.0: 
    Project:      "Apache Mina SSHD :: Core"
    Version:      1.7.0
    Available at: http://www.apache.org/
    Developed by: The Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.apache.ws.xmlschema.xmlschema-core:2.2.5: 
    Project:      XmlSchema Core
    Version:      2.2.5
    Available at: https://ws.apache.org/commons/xmlschema20/
    Developed by: The Apache Software Foundation (https://www.apache.org/)
    License name: Apache License, version 2.0
  
  org.bouncycastle:1.61: 
    Project: 
      - Bouncy Castle PKIX, CMS, EAC, TSP, PKCS, OCSP, CMP, and CRMF APIs
      - Bouncy Castle Provider
    Version:      1.61
    Available at: 
      - http://www.bouncycastle.org/java.html
      - https://www.bouncycastle.org/java.html
    License name: MIT License
    Notice:       Copyright (c) The Legion of the Bouncy Castle Inc. (http://www.bouncycastle.org)
  
  org.codehaus.groovy.groovy-all:2.4.15: 
    Project:      Apache Groovy
    Version:      2.4.15
    Available at: http://groovy-lang.org
    Developed by: Apache Software Foundation (http://groovy-lang.org)
    License name: Apache License, version 2.0
  
  org.codehaus.woodstox.stax2-api:3.1.4: 
    Project:      Stax2 API
    Version:      3.1.4
    Available at: http://wiki.fasterxml.com/WoodstoxStax2
    Developed by: fasterxml.com (http://fasterxml.com)
    License name: BSD 2-Clause (Simplified or FreeBSD) License
  
  org.eclipse.jetty:9.4.22.v20191022: 
    Project: 
      - "Jetty :: Http Utility"
      - "Jetty :: IO Utility"
      - "Jetty :: Security"
      - "Jetty :: Server Core"
      - "Jetty :: Servlet Handling"
      - "Jetty :: Utilities"
      - "Jetty :: Webapp Application Support"
      - "Jetty :: XML utilities"
    Version:      9.4.22.v20191022
    Available at: http://www.eclipse.org/jetty
    Developed by: Webtide (https://webtide.com)
    License name: Apache License, version 2.0
  
  org.eclipse.platform.org.eclipse.osgi:3.12.100: 
    Project:      OSGi System Bundle
    Version:      3.12.100
    Available at: http://www.eclipse.org/platform
    Developed by: Eclipse Foundation (http://www.eclipse.org/)
    License name: Eclipse Public License, version 1.0
  
  org.freemarker:2.3.25-incubating: 
    Project:      Apache FreeMarker
    Version:      2.3.25-incubating
    Available at: http://freemarker.org/
    Developed by: Apache Software Foundation (http://apache.org)
    License name: Apache License, version 2.0
  
  org.glassfish.external.opendmk_jmxremote_optional_jar:1.0-b01-ea: 
    Project:      opendmk_jmxremote_optional_jar
    Version:      1.0-b01-ea
    Available at: https://opendmk.java.net/
    License name: Common Development and Distribution License, version 1.1
  
  org.glassfish.jaxb:2.3.2: 
    Project: 
      - JAXB Runtime
      - TXW2 Runtime
    Version:      2.3.2
    Available at: https://javaee.github.io/jaxb-v2/
    Developed by: Oracle Corporation (http://www.oracle.com/)
    License name: Eclipse Distribution License, version 1.0
  
  org.hamcrest.hamcrest-core:1.3: 
    Project:      Hamcrest Core
    Version:      1.3
    Available at: https://github.com/hamcrest/JavaHamcrest
    License name: BSD 3-Clause (New BSD) License
  
  org.javassist:3.19.0-GA: 
    Project:      Javassist
    Version:      3.19.0-GA
    Available at: http://www.javassist.org/
    License name: Apache License, version 2.0
    Notice:       Copyright (c) Shigeru Chiba
  
  org.jline:3.13.2: 
    Project:      JLine Bundle
    Version:      3.13.2
    Available at: http://nexus.sonatype.org/oss-repository-hosting.html
    License name: BSD 3-Clause (New BSD) License
    Notice: 
      - Copyright (c) 2002-2018, the original author or authors.
      - Neither the name of JLine nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
  
  org.jvnet.staxex.stax-ex:1.8.1: 
    Project:      Extended StAX API
    Version:      1.8.1
    Available at: https://projects.eclipse.org/projects/ee4j
    Developed by: Eclipse Foundation (https://www.eclipse.org)
    License name: Eclipse Distribution License, version 1.0
  
  org.ops4j.base.ops4j-base-util-collections:1.5.1: 
    Project:      OPS4J Base - Util - Collections
    Version:      1.5.1
    Available at: http://team.ops4j.org/wiki/display/base/
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.base:1.5.0: 
    Project: 
      - OPS4J Base - Lang
      - OPS4J Base - Util - Property
    Version:      1.5.0
    Available at: http://team.ops4j.org/wiki/display/base/
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.pax.logging:1.11.4: 
    Project: 
      - OPS4J Pax Logging - API
      - OPS4J Pax Logging - Log4Jv2 implementation
    Version:      1.11.4
    Available at: https://ops4j1.jira.com/wiki/spaces/paxlogging/overview
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.pax.swissbox.pax-swissbox-property:1.8.3: 
    Project:      "OPS4J Pax Swissbox :: Property"
    Version:      1.8.3
    Available at: http://team.ops4j.org/wiki/display/PAXSB
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.pax.swissbox:1.8.2: 
    Project: 
      - "OPS4J Pax Swissbox :: Lifecycle"
      - "OPS4J Pax Swissbox :: OSGi Core"
      - "OPS4J Pax Swissbox :: Optional JCL"
    Version:      1.8.2
    Available at: http://team.ops4j.org/wiki/display/PAXSB
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.pax.url:2.6.2: 
    Project: 
      - OPS4J Pax Url - mvn:
      - "OPS4J Pax Url - mvn: - support library"
    Version:      2.6.2
    Available at: https://ops4j1.jira.com/wiki/spaces/paxurl/overview
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.ops4j.pax.web.pax-web-extender-whiteboard:7.2.3: 
    Project:      OPS4J Pax Web - Extender - Whiteboard
    Version:      7.2.3
    Available at: http://team.ops4j.org/wiki/display/paxweb/
    Developed by: OPS4J - Open Participation Software for Java (http://www.ops4j.org/)
    License name: Apache License, version 2.0
  
  org.osgi:6.0.0: 
    Project: 
      - org.osgi.core
      - org.osgi:osgi.cmpn
      - org.osgi:osgi.core
    Version:      6.0.0
    Available at: http://www.osgi.org
    Developed by: 
      - OSGi Alliance (http://www.osgi.org/)
      - OSGi Alliance (http://www.osgi.org)
    Licenses: 
      -
        License name: Apache License, version 2.0
      -
        License name: Apache License, version 2.0
  
  org.ow2.asm:5.0.4: 
    Project:      ASM Core
    Version:      5.0.4
    Available at: http://asm.objectweb.org/
    Developed by: ObjectWeb (http://www.objectweb.org/)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2000-2011 INRIA, France Telecom
  
  org.reflections:0.9.10: 
    Project:      Reflections
    Version:      0.9.10
    Available at: http://github.com/ronmamo/reflections
    License name: BSD 3-Clause (New BSD) License
  
  org.slf4j.jcl-over-slf4j:1.7.29: 
    Project:      Simple Logging Framework for Java
    Version:      1.7.29
    Available at: http://www.slf4j.org
    Developed by: QOS.ch (http://www.qos.ch)
    License name: Apache License, version 2.0
  
  org.slf4j:1.7.25: 
    Project:      Simple Logging Framework for Java
    Version:      1.7.25
    Available at: http://www.slf4j.org
    Developed by: QOS.ch (http://www.qos.ch)
    License name: MIT License
  
  org.xmlunit:2.3.0: 
    Project: 
      - org.xmlunit:xmlunit-core
      - org.xmlunit:xmlunit-matchers
    Version:      2.3.0
    Available at: http://www.xmlunit.org/
    Developed by: XMLUnit (http://www.xmlunit.org/)
    License name: Apache License, version 2.0
  
  org.yaml.snakeyaml:1.25: 
    Project:      SnakeYAML
    Version:      1.25
    Available at: http://www.snakeyaml.org
    License name: Apache License, version 2.0
  
  rw@1.3.3: 
    Project:      rw (NodeJS module)
    Version:      1.3.3
    Available at: https://github.com/mbostock/rw
    Developed by: Mike Bostock (http://bost.ocks.org/mike)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2014-2016, Michael Bostock. All rights reserved.
  
  rxjs@5.5.11: 
    Project:      rxjs (NodeJS module)
    Version:      5.5.11
    Available at: https://github.com/ReactiveX/RxJS
    Developed by: Ben Lesh (ben@benlesh.com)
    License name: Apache License, version 2.0
  
  safer-buffer@2.1.2: 
    Project:      safer-buffer (NodeJS module)
    Version:      2.1.2
    Available at: https://github.com/ChALkeR/safer-buffer
    Developed by: Nikita Skovoroda (https://github.com/ChALkeR)
    License name: MIT License
    Notice:       Copyright (c) 2018 Nikita Skovoroda <chalkerx@gmail.com>
  
  select@1.1.2: 
    Project:      select (NodeJS module)
    Version:      1.1.2
    Available at: https://github.com/zenorocha/select
    License name: MIT License
  
  sprintf-js@1.0.3: 
    Project:      sprintf-js (NodeJS module)
    Version:      1.0.3
    Available at: https://github.com/alexei/sprintf.js
    Developed by: Alexandru Marasteanu (http://alexei.ro/)
    License name: BSD 3-Clause (New BSD) License
    Notice:       Copyright (c) 2007-2014, Alexandru Marasteanu <hello [at) alexei (dot] ro>. All rights reserved.
  
  symbol-observable@1.0.1: 
    Project:      symbol-observable (NodeJS module)
    Version:      1.0.1
    Available at: https://github.com/blesh/symbol-observable
    Developed by: Ben Lesh (ben@benlesh.com)
    License name: MIT License
    Notice:       Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com). Copyright (c) Ben Lesh <ben@benlesh.com>
  
  tango-project-icons: 
    Project:      Tango Project Icons
    Available at: https://commons.wikimedia.org/wiki/File:Network-server.svg
    License name: Public Domain
    Notice:       Released into the public domain by the people from the Tango! project (The Tango! Desktop Project), via Wikimedia Commons
  
  tiny-emitter@1.2.0: 
    Project:      tiny-emitter (NodeJS module)
    Version:      1.2.0
    Available at: https://github.com/scottcorgan/tiny-emitter
    Developed by: Scott Corgan
    License name: MIT License
    Notice:       Copyright (c) 2016 Scott Corgan
  
  typeahead.js: 
    Project:      Typeahead JS
    Version:      0.10.5
    Available at: https://github.com/twitter/typeahead.js
    Developed by: Twitter, Inc (http://twitter.com)
    License name: MIT License
    Notice:       Copyright (c) Twitter, Inc. and other contributors (2013-2014)
  
  underscore.js:1.7.0: 
    Project:      Underscore JS
    Version:      1.7.0
    Available at: http://underscorejs.org
    Developed by: DocumentCloud Inc. (http://www.documentcloud.org/)
    Inclusive of: underscore*.{js,map}
    License name: MIT License
    Notice:       Copyright (c) Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors (2009-2014)
  
  underscore@1.9.1: 
    Project:      underscore (NodeJS module)
    Version:      1.9.1
    Available at: 
      - http://underscorejs.org
      - https://github.com/jashkenas/underscore
    Developed by: Jeremy Ashkenas (jeremy@documentcloud.org)
    License name: MIT License
    Notice:       Copyright (c) 2009-2018 Jeremy Ashkenas, DocumentCloud and Investigative. Reporters & Editors
  
  whatwg-fetch@2.0.4: 
    Project:      whatwg-fetch (NodeJS module)
    Version:      2.0.4
    Available at: https://github.com/github/fetch
    License name: MIT License
    Notice:       Copyright (c) 2014-2016 GitHub, Inc.
  
  wsdl4j:1.6.3: 
    Project:      WSDL4J
    Version:      1.6.3
    Available at: http://sf.net/projects/wsdl4j
    License name: Common Public License, version 1.0
  
  xml-apis:1.4.01: 
    Project:      XML Commons External Components XML APIs
    Version:      1.4.01
    Available at: http://xml.apache.org/commons/components/external/
    License name: Apache License, version 2.0
  
  xml-resolver:1.2: 
    Project:      XML Commons Resolver Component
    Version:      1.2
    Available at: http://xml.apache.org/commons/components/resolver/
    Developed by: Apache Software Foundation (http://www.apache.org/)
    License name: Apache License, version 2.0
  
  xmlhttprequest@1.8.0: 
    Project:      xmlhttprequest (NodeJS module)
    Version:      1.8.0
    Available at: https://github.com/driverdan/node-XMLHttpRequest
    Developed by: Dan DeFelippi (http://driverdan.com)
    License name: MIT License
  
  xmlpull:1.1.3.1: 
    Project:      XML Pull Parsing API
    Version:      1.1.3.1
    Available at: http://www.xmlpull.org
    License name: Public Domain
  
  xpp3.xpp3_min:1.1.4c: 
    Project:      "MXP1: Xml Pull Parser 3rd Edition (XPP3)"
    Version:      1.1.4c
    Available at: http://www.extreme.indiana.edu/xgws/xsoap/xpp/mxp1/
    Developed by: Extreme! Lab, Indiana University (http://www.extreme.indiana.edu/)
    License name: Indiana University Extreme! Lab Software License, vesion 1.1.1
    Notice:       Copyright (c) Extreme! Lab, Indiana University
  
