properties.0.name = org.eclipse.oomph.p2.iu.compatibility
properties.0.value = Major
instructions.configure=setProgramProperty(propName:eclipse.p2.max.threads,propValue:10);\
  setProgramProperty(propName:org.eclipse.update.reconcile,propValue:false);\
  setProgramProperty(propName:osgi.requiredJavaVersion,propValue:1.8);\
  setProgramProperty(propName:p2.userAgent,propValue:eclipse/oomph/installer);\
  setProgramProperty(propName:oomph.setup.product.catalog.filter,propValue:);\
  setProgramProperty(propName:oomph.setup.product.filter,propValue:);\
  setProgramProperty(propName:oomph.setup.product.version.filter,propValue:);\
  setProgramProperty(propName:oomph.setup.jre.choice,propValue:true);
instructions.unconfigure=setProgramProperty(propName:eclipse.p2.max.threads,propValue:);\
  setProgramProperty(propName:org.eclipse.update.reconcile,propValue:);\
  setProgramProperty(propName:osgi.requiredJavaVersion,propValue:);\
  setProgramProperty(propName:p2.userAgent,propValue:);\
  setProgramProperty(propName:oomph.setup.product.catalog.filter,propValue:);\
  setProgramProperty(propName:oomph.setup.product.filter:);\
  setProgramProperty(propName:oomph.setup.product.version.filter,propValue:);\
  setProgramProperty(propName:oomph.setup.jre.choice,propValue:);
