<?xml version='1.0' encoding='UTF-8'?>
<units size='55'>
  <unit id='a.jre.javase' version='11.0.0' singleton='false'>
    <provides size='257'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='a.jre.javase' version='11.0.0'/>
      <provided namespace='java.package' name='java.applet' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.table' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.desktop' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.jpeg' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.type' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.dom' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.zip' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.views' version='0.0.0'/>
      <provided namespace='java.package' name='java.time' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.element' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.bootstrap' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.sctp' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.validation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.events' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.datatransfer' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.event' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.metal' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.activation' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.logging' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.colorchooser' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.support' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.x500' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.stream' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.annotation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.directory' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.chrono' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.loading' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='java.math' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.transaction.xa' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.geom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stax' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.traversal' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.swing.interop' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt' version='0.0.0'/>
      <provided namespace='java.package' name='java.text' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.undo' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.datatype' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.html' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.prefs' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.metadata' version='0.0.0'/>
      <provided namespace='java.package' name='java.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.bmp' version='0.0.0'/>
      <provided namespace='java.package' name='sun.misc' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nashorn.api.scripting' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.format' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.server' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.serial' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.parsers' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.synth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.basic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.tree' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.function' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image.renderable' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ls' version='0.0.0'/>
      <provided namespace='java.package' name='javax.smartcardio' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker.support' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.dgc' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.annotation.processing' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.http' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.invoke' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.catalog' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nio' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.management' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.atomic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.rmi.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.openmbean' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.color' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.rtf' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.javadoc.doclet' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.print' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.multi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.registry' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.events' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.java.accessibility.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.management.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.javadoc' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.request' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.instrument' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.ref' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.regex' version='0.0.0'/>
      <provided namespace='java.package' name='org.ietf.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.filechooser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='java.security' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.helpers' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute.standard' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.tool' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.javadoc' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.jconsole' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.security.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.kerberos' version='0.0.0'/>
      <provided namespace='java.package' name='java.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='java.util' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.acl' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.temporal' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.stylesheets' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.monitor' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.doctree' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.dnd' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.execution' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html.parser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.css' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.javac' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.text.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.timer' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.keyinfo' version='0.0.0'/>
      <provided namespace='java.package' name='javax.accessibility' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.tree' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.namespace' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.font' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.relation' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.modelmbean' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.sax' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.locks' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.nimbus' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.border' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr.consumer' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.tiff' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.ext' version='0.0.0'/>
      <provided namespace='java.package' name='sun.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.util' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.sasl' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.module' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.ldap' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nashorn.api.tree' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.zone' version='0.0.0'/>
      <provided namespace='java.package' name='netscape.javascript' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans.beancontext' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.tools' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.spec' version='0.0.0'/>
      <provided namespace='java.package' name='javax.script' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.module' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset' version='0.0.0'/>
      <provided namespace='java.package' name='java.io' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.jar' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ranges' version='0.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.1.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.3.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.4.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.5.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.6.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.7.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='11.0.0'/>
    </provides>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='a.jre.javase' version='16.0.0' singleton='false'>
    <provides size='261'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='a.jre.javase' version='16.0.0'/>
      <provided namespace='java.package' name='java.applet' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.table' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.desktop' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.jpeg' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.type' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.zip' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.dom' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.views' version='0.0.0'/>
      <provided namespace='java.package' name='java.time' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.element' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.bootstrap' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.sctp' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.validation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.events' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.datatransfer' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.event' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.metal' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.activation' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.colorchooser' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.logging' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.support' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.x500' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.annotation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.directory' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.chrono' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.loading' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='java.math' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.transaction.xa' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.geom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stax' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.traversal' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.swing.interop' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt' version='0.0.0'/>
      <provided namespace='java.package' name='java.text' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.undo' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.datatype' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.html' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.prefs' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.metadata' version='0.0.0'/>
      <provided namespace='java.package' name='java.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.bmp' version='0.0.0'/>
      <provided namespace='java.package' name='sun.misc' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.format' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.server' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.parsers' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.serial' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.synth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.basic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.tree' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.function' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image.renderable' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ls' version='0.0.0'/>
      <provided namespace='java.package' name='javax.smartcardio' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker.support' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.dgc' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.annotation.processing' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.http' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.invoke' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.catalog' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nio' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.management' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.atomic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.rmi.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.openmbean' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.color' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.rtf' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.javadoc.doclet' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.print' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.multi' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.events' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.registry' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.java.accessibility.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.management.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.constant' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.request' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.ref' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.instrument' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.regex' version='0.0.0'/>
      <provided namespace='java.package' name='org.ietf.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.filechooser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='java.security' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.helpers' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.ldap.spi' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute.standard' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.tool' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.jconsole' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.security.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.kerberos' version='0.0.0'/>
      <provided namespace='java.package' name='java.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='java.util' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.temporal' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.stylesheets' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.monitor' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.doctree' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.dnd' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.execution' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html.parser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.css' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.javac' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.text.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.timer' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.keyinfo' version='0.0.0'/>
      <provided namespace='java.package' name='javax.accessibility' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.tree' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.namespace' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.font' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.relation' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.modelmbean' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.sax' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.locks' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.nimbus' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nio.mapmode' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.border' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr.consumer' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.tiff' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.ext' version='0.0.0'/>
      <provided namespace='java.package' name='sun.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.util' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.runtime' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.sasl' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.module' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.ldap' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.zone' version='0.0.0'/>
      <provided namespace='java.package' name='netscape.javascript' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans.beancontext' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.tools' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.spec' version='0.0.0'/>
      <provided namespace='java.package' name='javax.script' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.module' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.util' version='0.0.0'/>
      <provided namespace='java.package' name='java.io' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.jar' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ranges' version='0.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.1.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.3.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.4.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.5.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.6.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.7.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='12.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='13.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='14.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='15.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='16.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='11.0.0'/>
    </provides>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='a.jre.javase' version='17.0.0' singleton='false'>
    <provides size='262'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='a.jre.javase' version='17.0.0'/>
      <provided namespace='java.package' name='java.applet' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.table' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.desktop' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.jpeg' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.type' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.zip' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.dom' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.views' version='0.0.0'/>
      <provided namespace='java.package' name='java.time' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.element' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.bootstrap' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.sctp' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.validation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.events' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.datatransfer' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.event' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.metal' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.logging' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.colorchooser' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.support' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.x500' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.annotation' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.directory' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.chrono' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.loading' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='java.math' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.transaction.xa' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.geom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stax' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.traversal' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.swing.interop' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt' version='0.0.0'/>
      <provided namespace='java.package' name='java.text' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.undo' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.datatype' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.html' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.login' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.connect.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.prefs' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.metadata' version='0.0.0'/>
      <provided namespace='java.package' name='java.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.bmp' version='0.0.0'/>
      <provided namespace='java.package' name='sun.misc' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.format' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.server' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.parsers' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.serial' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.synth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.basic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.tree' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.function' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.image.renderable' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.nio.file' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ls' version='0.0.0'/>
      <provided namespace='java.package' name='javax.smartcardio' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.random' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.dynalink.linker.support' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.dgc' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.annotation.processing' version='0.0.0'/>
      <provided namespace='java.package' name='java.net.http' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.invoke' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.cert' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.xpath' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.catalog' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nio' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.management' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.atomic' version='0.0.0'/>
      <provided namespace='java.package' name='javax.rmi.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.openmbean' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.color' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.rtf' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.javadoc.doclet' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.print' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.multi' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.net.ssl' version='0.0.0'/>
      <provided namespace='java.package' name='java.rmi.registry' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.stream.events' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.java.accessibility.util' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.attribute' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.management.jfr' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.constant' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi.request' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.ref' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.instrument' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.regex' version='0.0.0'/>
      <provided namespace='java.package' name='org.ietf.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.filechooser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='java.security' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.helpers' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.ldap.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.print.attribute.standard' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.tool' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.jconsole' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.security.jarsigner' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.auth.kerberos' version='0.0.0'/>
      <provided namespace='java.package' name='java.sql' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto' version='0.0.0'/>
      <provided namespace='java.package' name='java.util' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.temporal' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.channels' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.stylesheets' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.midi' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.net' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.stream' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.monitor' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.doctree' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.net.httpserver.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.dnd' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jshell.execution' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.text.html.parser' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.css' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.javac' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.jdi' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.charset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.jgss' version='0.0.0'/>
      <provided namespace='java.package' name='java.text.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.timer' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.spec' version='0.0.0'/>
      <provided namespace='java.package' name='java.nio.file.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dsig.keyinfo' version='0.0.0'/>
      <provided namespace='java.package' name='javax.accessibility' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.tree' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.namespace' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.font' version='0.0.0'/>
      <provided namespace='java.package' name='java.security.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.tools.attach.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.relation' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.modelmbean' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sound.sampled.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.transform.sax' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote.rmi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.event' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.concurrent.locks' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.nio.mapmode' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.plaf.nimbus' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.event' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset.spi' version='0.0.0'/>
      <provided namespace='java.package' name='javax.swing.border' version='0.0.0'/>
      <provided namespace='java.package' name='jdk.jfr.consumer' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management.remote' version='0.0.0'/>
      <provided namespace='java.package' name='javax.imageio.plugins.tiff' version='0.0.0'/>
      <provided namespace='java.package' name='org.xml.sax.ext' version='0.0.0'/>
      <provided namespace='java.package' name='sun.reflect' version='0.0.0'/>
      <provided namespace='java.package' name='javax.lang.model.util' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.callback' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.runtime' version='0.0.0'/>
      <provided namespace='java.package' name='javax.security.sasl' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.security.auth.module' version='0.0.0'/>
      <provided namespace='java.package' name='javax.xml.crypto.dom' version='0.0.0'/>
      <provided namespace='java.package' name='javax.naming.ldap' version='0.0.0'/>
      <provided namespace='java.package' name='java.time.zone' version='0.0.0'/>
      <provided namespace='java.package' name='netscape.javascript' version='0.0.0'/>
      <provided namespace='java.package' name='java.awt.im.spi' version='0.0.0'/>
      <provided namespace='java.package' name='java.beans.beancontext' version='0.0.0'/>
      <provided namespace='java.package' name='javax.management' version='0.0.0'/>
      <provided namespace='java.package' name='javax.tools' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.spec' version='0.0.0'/>
      <provided namespace='java.package' name='javax.script' version='0.0.0'/>
      <provided namespace='java.package' name='java.lang.module' version='0.0.0'/>
      <provided namespace='java.package' name='com.sun.source.util' version='0.0.0'/>
      <provided namespace='java.package' name='java.io' version='0.0.0'/>
      <provided namespace='java.package' name='javax.sql.rowset' version='0.0.0'/>
      <provided namespace='java.package' name='java.util.jar' version='0.0.0'/>
      <provided namespace='java.package' name='javax.crypto.interfaces' version='0.0.0'/>
      <provided namespace='java.package' name='org.w3c.dom.ranges' version='0.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.0.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.1.0'/>
      <provided namespace='osgi.ee' name='OSGi/Minimum' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JRE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.1.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.2.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.3.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.4.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.5.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.6.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.7.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='12.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='13.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='14.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='15.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='16.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE' version='17.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact1' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact2' version='11.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='1.8.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='9.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='10.0.0'/>
      <provided namespace='osgi.ee' name='JavaSE/compact3' version='11.0.0'/>
    </provides>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.configuration' version='4.9.0'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.configuration' version='4.9.0'/>
    </provides>
    <requires size='28'>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.simpleconfigurator' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.event' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.event' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.event' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.win32.win32.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.win32.win32.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.common' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.gtk.linux.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.apache.felix.scr' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.core.runtime' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.gtk.linux.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.simpleconfigurator' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.apache.felix.scr' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.apache.felix.scr' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.core.runtime' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.common' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.apache.felix.scr' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.core.runtime' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.core.runtime' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.common' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.common' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.simpleconfigurator' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.event' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.simpleconfigurator' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
    </requires>
    <touchpoint id='null' version='0.0.0'/>
  </unit>
  <unit id='tooling.org.eclipse.update.feature.default' version='1.0.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='feature' range='0.0.0' optional='true' multiple='true' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='tooling.org.eclipse.update.feature.default' version='1.0.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='feature' range='0.0.0' optional='true' multiple='true' greedy='false'/>
    </requires>
    <filter>
      (org.eclipse.update.install.features=true)
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          uninstallFeature(feature:${artifact},featureId:default,featureVersion:default)
        </instruction>
        <instruction key='install'>
          installFeature(feature:${artifact},featureId:default,featureVersion:default)
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.application' version='4.9.0'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.application' version='4.9.0'/>
    </provides>
    <requires size='17'>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64.birt' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64.birt' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64.birt' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64.birt' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.win32.win32.x86_64' range='[1.2.400.v20211117-0650,1.2.400.v20211117-0650]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.cocoa.macosx.aarch64' range='[1.2.400.v20211117-0650,1.2.400.v20211117-0650]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.gtk.linux.x86_64' range='[1.2.400.v20211117-0650,1.2.400.v20211117-0650]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.cocoa.macosx.x86_64' range='[1.2.400.v20211117-0650,1.2.400.v20211117-0650]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher' range='[1.6.400.v20210924-0641,1.6.400.v20210924-0641]'/>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
    </requires>
    <touchpoint id='null' version='0.0.0'/>
  </unit>
  <unit id='tooling.source.default' version='1.0.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='source' range='0.0.0' optional='true' multiple='true' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='tooling.source.default' version='1.0.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='source' range='0.0.0' optional='true' multiple='true' greedy='false'/>
    </requires>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          removeSourceBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          addSourceBundle(bundle:${artifact})
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='tooling.osgi.bundle.default' version='1.0.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='0.0.0' multiple='true' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='tooling.osgi.bundle.default' version='1.0.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='0.0.0' multiple='true' greedy='false'/>
    </requires>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:4);
        </instruction>
        <instruction key='unconfigure'>

        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='config.a.jre.javase' version='11.0.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='a.jre.javase' range='11.0.0'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='config.a.jre.javase' version='11.0.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='a.jre.javase' range='11.0.0'/>
    </requires>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='1'>
        <instruction key='install'>

        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingwin32.win32.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingwin32.win32.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:1);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' version='4.9.0'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.executable' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.equinox.launcher.cocoa.macosx.x86_64' range='0.0.0'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <artifacts size='1'>
      <artifact classifier='binary' id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' version='4.9.0'/>
    </artifacts>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64.birt' version='4.9.0' singleton='false'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64.birt' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setLauncherName(name:birt)
        </instruction>
        <instruction key='unconfigure'>
          setLauncherName()
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.aarch64org.eclipse.equinox.event' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.event' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.aarch64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingwin32.win32.x86_64org.eclipse.equinox.event' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.event' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingwin32.win32.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64.birt' version='4.9.0' singleton='false'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64.birt' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setLauncherName(name:birt)
        </instruction>
        <instruction key='unconfigure'>
          setLauncherName()
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolinggtk.linux.x86_64org.eclipse.equinox.event' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.event' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolinggtk.linux.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' version='4.9.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' range='[4.9.0,4.9.0]'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          cleanupzip(source:@artifact, target:${installFolder}/../);
        </instruction>
        <instruction key='install'>
          unzip(source:@artifact, target:${installFolder}/../); chmod(targetDir:${installFolder}/../MacOS/, targetFile:birt, permissions:755);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.config.win32.win32.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.win32.win32.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.config' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setProgramProperty(propName:eclipse.application,propValue:org.eclipse.birt.report.designer.ui.rcp.DesignerApplication);
        </instruction>
        <instruction key='unconfigure'>
          setProgramProperty(propName:eclipse.application,propValue:);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.ini.win32.win32.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.win32.win32.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.ini' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          addJvmArg(jvmArg:-Xms512m);addJvmArg(jvmArg:-Xmx1024m);
        </instruction>
        <instruction key='unconfigure'>
          removeJvmArg(jvmArg:-Xms512m);removeJvmArg(jvmArg:-Xmx1024m);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.equinox.launcher.win32.win32.x86_64' version='1.2.400.v20211117-0650' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.win32.win32.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.win32.win32.x86_64' version='1.2.400.v20211117-0650'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.win32.win32.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          addProgramArg(programArg:--launcher.library);addProgramArg(programArg:@artifact);
        </instruction>
        <instruction key='unconfigure'>
          removeProgramArg(programArg:--launcher.library);removeProgramArg(programArg:@artifact);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.aarch64org.eclipse.equinox.common' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.common' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.aarch64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.config.gtk.linux.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.gtk.linux.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.config' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setProgramProperty(propName:eclipse.application,propValue:org.eclipse.birt.report.designer.ui.rcp.DesignerApplication);
        </instruction>
        <instruction key='unconfigure'>
          setProgramProperty(propName:eclipse.application,propValue:);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.aarch64org.apache.felix.scr' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.apache.felix.scr' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.aarch64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.equinox.launcher' version='1.6.400.v20210924-0641' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher' range='1.6.400.v20210924-0641'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher' version='1.6.400.v20210924-0641'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher' range='1.6.400.v20210924-0641'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          addProgramArg(programArg:-startup);addProgramArg(programArg:@artifact);
        </instruction>
        <instruction key='unconfigure'>
          removeProgramArg(programArg:-startup);removeProgramArg(programArg:@artifact);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.aarch64org.eclipse.core.runtime' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.core.runtime' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.aarch64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' version='4.9.0'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.executable' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.equinox.launcher.cocoa.macosx' range='0.0.0'>
        <filter>
          (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
        </filter>
      </required>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <artifacts size='1'>
      <artifact classifier='binary' id='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.aarch64' version='4.9.0'/>
    </artifacts>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.ini.gtk.linux.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.gtk.linux.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.ini' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          addJvmArg(jvmArg:-Xms512m);addJvmArg(jvmArg:-Xmx1024m);
        </instruction>
        <instruction key='unconfigure'>
          removeJvmArg(jvmArg:-Xms512m);removeJvmArg(jvmArg:-Xmx1024m);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' version='4.9.0'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.executable' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.equinox.launcher.gtk.linux.x86_64' range='0.0.0'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
        </filter>
      </required>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <artifacts size='1'>
      <artifact classifier='binary' id='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' version='4.9.0'/>
    </artifacts>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='toolingcocoa.macosx.aarch64org.eclipse.equinox.simpleconfigurator' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.aarch64org.eclipse.equinox.simpleconfigurator' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.aarch64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:1);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingwin32.win32.x86_64org.apache.felix.scr' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.apache.felix.scr' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingwin32.win32.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' version='4.9.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.cocoa.macosx.x86_64' range='[4.9.0,4.9.0]'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          cleanupzip(source:@artifact, target:${installFolder}/../);
        </instruction>
        <instruction key='install'>
          unzip(source:@artifact, target:${installFolder}/../); chmod(targetDir:${installFolder}/../MacOS/, targetFile:birt, permissions:755);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' version='4.9.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' range='[4.9.0,4.9.0]'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64' range='[4.9.0,4.9.0]'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          cleanupzip(source:@artifact, target:${installFolder});
        </instruction>
        <instruction key='install'>
          unzip(source:@artifact, target:${installFolder}); chmod(targetDir:${installFolder}, targetFile:birt, permissions:755);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp' version='4.9.0'>
    <update id='org.eclipse.birt.report.designer.rcp' range='0.0.0' severity='0'/>
    <properties size='3'>
      <property name='org.eclipse.equinox.p2.name' value='BIRT Report Designer RCP'/>
      <property name='org.eclipse.equinox.p2.type.product' value='true'/>
      <property name='org.eclipse.equinox.p2.type.group' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp' version='4.9.0'/>
    </provides>
    <requires size='7'>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.configuration' range='[4.9.0,4.9.0]'/>
      <required namespace='org.eclipse.equinox.p2.iu' name='tooling.org.eclipse.update.feature.default' range='[1.0.0,1.0.0]'>
        <filter>
          (org.eclipse.update.install.features=true)
        </filter>
      </required>
      <required namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.application' range='[4.9.0,4.9.0]'/>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.rcp.feature.group' range='[4.9.0,4.9.0]'/>
      <required namespace='org.eclipse.equinox.p2.iu' name='tooling.source.default' range='[1.0.0,1.0.0]'/>
      <required namespace='org.eclipse.equinox.p2.iu' name='tooling.osgi.bundle.default' range='[1.0.0,1.0.0]'/>
      <required namespace='osgi.ee' name='JavaSE' range='0.0.0'/>
    </requires>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.aarch64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.aarch64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.config' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setProgramProperty(propName:eclipse.application,propValue:org.eclipse.birt.report.designer.ui.rcp.DesignerApplication);
        </instruction>
        <instruction key='unconfigure'>
          setProgramProperty(propName:eclipse.application,propValue:);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolinggtk.linux.x86_64org.apache.felix.scr' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.apache.felix.scr' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolinggtk.linux.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' version='4.9.0' singleton='false'>
    <hostRequirements size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' range='[4.9.0,4.9.0]'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' range='[4.9.0,4.9.0]'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='uninstall'>
          cleanupzip(source:@artifact, target:${installFolder});
        </instruction>
        <instruction key='install'>
          unzip(source:@artifact, target:${installFolder});
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.x86_64org.eclipse.core.runtime' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.core.runtime' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.x86_64org.eclipse.equinox.common' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.common' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64.birt' version='4.9.0' singleton='false'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.gtk.linux.x86_64.birt' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setLauncherName(name:birt)
        </instruction>
        <instruction key='unconfigure'>
          setLauncherName()
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.x86_64org.apache.felix.scr' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.apache.felix.scr' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.apache.felix.scr' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingwin32.win32.x86_64org.eclipse.core.runtime' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.core.runtime' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingwin32.win32.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.ini' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          addJvmArg(jvmArg:-Xms512m);addJvmArg(jvmArg:-Xmx1024m);addJvmArg(jvmArg:-XstartOnFirstThread);addJvmArg(jvmArg:-Dorg.eclipse.swt.internal.carbon.smallFonts);
        </instruction>
        <instruction key='unconfigure'>
          removeJvmArg(jvmArg:-Xms512m);removeJvmArg(jvmArg:-Xmx1024m);removeJvmArg(jvmArg:-XstartOnFirstThread);removeJvmArg(jvmArg:-Dorg.eclipse.swt.internal.carbon.smallFonts);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64.birt' version='4.9.0' singleton='false'>
    <provides size='1'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64.birt' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setLauncherName(name:birt)
        </instruction>
        <instruction key='unconfigure'>
          setLauncherName()
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.equinox.launcher.cocoa.macosx.aarch64' version='1.2.400.v20211117-0650' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.cocoa.macosx.aarch64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.cocoa.macosx.aarch64' version='1.2.400.v20211117-0650'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.cocoa.macosx.aarch64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          addProgramArg(programArg:--launcher.library);addProgramArg(programArg:@artifact);
        </instruction>
        <instruction key='unconfigure'>
          removeProgramArg(programArg:--launcher.library);removeProgramArg(programArg:@artifact);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.aarch64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.ini.cocoa.macosx.aarch64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.ini' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=aarch64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          addJvmArg(jvmArg:-Xms512m);addJvmArg(jvmArg:-Xmx1024m);addJvmArg(jvmArg:-XstartOnFirstThread);addJvmArg(jvmArg:-Dorg.eclipse.swt.internal.carbon.smallFonts);
        </instruction>
        <instruction key='unconfigure'>
          removeJvmArg(jvmArg:-Xms512m);removeJvmArg(jvmArg:-Xmx1024m);removeJvmArg(jvmArg:-XstartOnFirstThread);removeJvmArg(jvmArg:-Dorg.eclipse.swt.internal.carbon.smallFonts);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' version='4.9.0'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.executable' version='4.9.0'/>
    </provides>
    <requires size='1'>
      <required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.equinox.launcher.win32.win32.x86_64' range='0.0.0'>
        <filter>
          (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
        </filter>
      </required>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <artifacts size='1'>
      <artifact classifier='binary' id='org.eclipse.birt.report.designer.rcp.executable.win32.win32.x86_64' version='4.9.0'/>
    </artifacts>
    <touchpoint id='org.eclipse.equinox.p2.native' version='1.0.0'/>
  </unit>
  <unit id='toolinggtk.linux.x86_64org.eclipse.core.runtime' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.core.runtime' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolinggtk.linux.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.core.runtime' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingwin32.win32.x86_64org.eclipse.equinox.common' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingwin32.win32.x86_64org.eclipse.equinox.common' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingwin32.win32.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=win32)(osgi.ws=win32))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.equinox.launcher.gtk.linux.x86_64' version='1.2.400.v20211117-0650' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.gtk.linux.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.gtk.linux.x86_64' version='1.2.400.v20211117-0650'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.gtk.linux.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          addProgramArg(programArg:--launcher.library);addProgramArg(programArg:@artifact);
        </instruction>
        <instruction key='unconfigure'>
          removeProgramArg(programArg:--launcher.library);removeProgramArg(programArg:@artifact);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.equinox.launcher.cocoa.macosx.x86_64' version='1.2.400.v20211117-0650' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.cocoa.macosx.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.equinox.launcher.cocoa.macosx.x86_64' version='1.2.400.v20211117-0650'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='tooling' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.launcher.cocoa.macosx.x86_64' range='1.2.400.v20211117-0650'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          addProgramArg(programArg:--launcher.library);addProgramArg(programArg:@artifact);
        </instruction>
        <instruction key='unconfigure'>
          removeProgramArg(programArg:--launcher.library);removeProgramArg(programArg:@artifact);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolinggtk.linux.x86_64org.eclipse.equinox.common' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.common' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolinggtk.linux.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.common' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.x86_64' version='4.9.0' singleton='false'>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingorg.eclipse.birt.report.designer.rcp.config.cocoa.macosx.x86_64' version='4.9.0'/>
      <provided namespace='toolingorg.eclipse.birt.report.designer.rcp' name='org.eclipse.birt.report.designer.rcp.config' version='4.9.0'/>
    </provides>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='org.eclipse.equinox.p2.osgi' version='1.0.0'/>
    <touchpointData size='1'>
      <instructions size='2'>
        <instruction key='configure'>
          setProgramProperty(propName:eclipse.application,propValue:org.eclipse.birt.report.designer.ui.rcp.DesignerApplication);
        </instruction>
        <instruction key='unconfigure'>
          setProgramProperty(propName:eclipse.application,propValue:);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolinggtk.linux.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolinggtk.linux.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolinggtk.linux.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=linux)(osgi.ws=gtk))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:1);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.x86_64org.eclipse.equinox.event' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.event' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.event' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:2);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
  <unit id='toolingcocoa.macosx.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0' singleton='false'>
    <hostRequirements size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </hostRequirements>
    <properties size='1'>
      <property name='org.eclipse.equinox.p2.type.fragment' value='true'/>
    </properties>
    <provides size='2'>
      <provided namespace='org.eclipse.equinox.p2.iu' name='toolingcocoa.macosx.x86_64org.eclipse.equinox.simpleconfigurator' version='4.9.0'/>
      <provided namespace='org.eclipse.equinox.p2.flavor' name='toolingcocoa.macosx.x86_64' version='1.0.0'/>
    </provides>
    <requires size='2'>
      <required namespace='osgi.bundle' name='org.eclipse.equinox.simpleconfigurator' range='0.0.0'/>
      <required namespace='org.eclipse.equinox.p2.eclipse.type' name='bundle' range='[1.0.0,2.0.0)' greedy='false'/>
    </requires>
    <filter>
      (&amp;(osgi.arch=x86_64)(osgi.os=macosx)(osgi.ws=cocoa))
    </filter>
    <touchpoint id='null' version='0.0.0'/>
    <touchpointData size='1'>
      <instructions size='4'>
        <instruction key='uninstall'>
          uninstallBundle(bundle:${artifact})
        </instruction>
        <instruction key='install'>
          installBundle(bundle:${artifact})
        </instruction>
        <instruction key='configure'>
          setStartLevel(startLevel:1);markStarted(started: true);
        </instruction>
        <instruction key='unconfigure'>
          setStartLevel(startLevel:-1);markStarted(started: false);
        </instruction>
      </instructions>
    </touchpointData>
  </unit>
</units>
