diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.classpath b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.classpath
new file mode 100644
index 0000000..2d1a430
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.project b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.project
new file mode 100644
index 0000000..040dc36
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.amp.escape.ascape.chart</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/META-INF/MANIFEST.MF b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..ffaac9b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.amp.escape.ascape.chart;singleton:=true
+Bundle-Version: 0.2.0.qualifier
+Bundle-Activator: org.eclipse.amp.escape.ascape.chart.EscapeAscapeChartPlugin
+Bundle-Vendor: %providerName
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.ascape.core;bundle-version="5.2.0",
+ org.eclipse.birt.chart.engine;bundle-version="2.5.0",
+ org.eclipse.gef;bundle-version="3.5.0",
+ org.eclipse.amp.axf.views;bundle-version="0.2.0",
+ org.eclipse.amp.agf.core;bundle-version="0.2.0",
+ org.eclipse.amp.agf.chart;bundle-version="0.2.0",
+ org.eclipse.amp.escape.ascape;bundle-version="0.2.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.amp.escape.ascape.chart
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/build.properties b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/build.properties
new file mode 100644
index 0000000..79785ac
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/build.properties
@@ -0,0 +1,6 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               icons/,\
+               plugin.xml
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/areacharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/areacharticon.gif
new file mode 100644
index 0000000..386104b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/areacharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/arrow.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/arrow.gif
new file mode 100644
index 0000000..f3f0f6b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/arrow.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/barcharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/barcharticon.gif
new file mode 100644
index 0000000..2137d3f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/barcharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/bubblecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/bubblecharticon.gif
new file mode 100644
index 0000000..6899386
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/bubblecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartbuilder.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartbuilder.gif
new file mode 100644
index 0000000..ec3879b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartbuilder.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartpreview.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartpreview.gif
new file mode 100644
index 0000000..861780c
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartpreview.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartselector.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartselector.gif
new file mode 100644
index 0000000..defb693
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/chartselector.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/conecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/conecharticon.gif
new file mode 100644
index 0000000..9bfbe21
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/conecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/delete_edit.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/delete_edit.gif
new file mode 100644
index 0000000..b6922ac
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/delete_edit.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/differencecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/differencecharticon.gif
new file mode 100644
index 0000000..af9574c
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/differencecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/display_show_text.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/display_show_text.gif
new file mode 100644
index 0000000..2a2b4b6
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/display_show_text.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/expressionbuilder.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/expressionbuilder.gif
new file mode 100644
index 0000000..8fe2216
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/expressionbuilder.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/externalizetext.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/externalizetext.gif
new file mode 100644
index 0000000..13fdc7e
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/externalizetext.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_Sthrough.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_Sthrough.gif
new file mode 100644
index 0000000..83c155a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_Sthrough.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_bold.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_bold.gif
new file mode 100644
index 0000000..027f952
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_bold.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_italic.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_italic.gif
new file mode 100644
index 0000000..9df6b1e
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_italic.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_underline.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_underline.gif
new file mode 100644
index 0000000..eec4349
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/fnt_style_underline.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/formatbuilder.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/formatbuilder.gif
new file mode 100644
index 0000000..f885931
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/formatbuilder.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ganttcharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ganttcharticon.gif
new file mode 100644
index 0000000..dc8a4c3
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ganttcharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/group.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/group.gif
new file mode 100644
index 0000000..412d6e2
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/group.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/linecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/linecharticon.gif
new file mode 100644
index 0000000..9603d2c
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/linecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/marker_icon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/marker_icon.gif
new file mode 100644
index 0000000..888e16a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/marker_icon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/metercharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/metercharticon.gif
new file mode 100644
index 0000000..855ae0b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/metercharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline.gif
new file mode 100644
index 0000000..0d891ab
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline_lib.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline_lib.gif
new file mode 100644
index 0000000..d161662
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/outline_lib.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/palette_view.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/palette_view.gif
new file mode 100644
index 0000000..80c152a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/palette_view.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/piecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/piecharticon.gif
new file mode 100644
index 0000000..08a3fe1
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/piecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/progress_rem.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/progress_rem.gif
new file mode 100644
index 0000000..2cd9c54
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/progress_rem.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/pyramidcharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/pyramidcharticon.gif
new file mode 100644
index 0000000..14a2402
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/pyramidcharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomleft.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomleft.gif
new file mode 100644
index 0000000..3d6b38f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomleft.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomright.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomright.gif
new file mode 100644
index 0000000..4d643fd
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_bottomright.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftdown.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftdown.gif
new file mode 100644
index 0000000..2201adc
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftdown.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftup.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftup.gif
new file mode 100644
index 0000000..31bd742
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_leftup.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightdown.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightdown.gif
new file mode 100644
index 0000000..6c69a40
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightdown.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightup.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightup.gif
new file mode 100644
index 0000000..2874212
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_rightup.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topleft.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topleft.gif
new file mode 100644
index 0000000..50d015a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topleft.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topright.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topright.gif
new file mode 100644
index 0000000..304110b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/ra_topright.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rectangle_multitype.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rectangle_multitype.gif
new file mode 100644
index 0000000..a76b4aa
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rectangle_multitype.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rulebuilder.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rulebuilder.gif
new file mode 100644
index 0000000..bcc1bda
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/rulebuilder.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/scattercharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/scattercharticon.gif
new file mode 100644
index 0000000..6435569
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/scattercharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectdata.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectdata.gif
new file mode 100644
index 0000000..2cc8203
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectdata.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectformat.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectformat.gif
new file mode 100644
index 0000000..2aad756
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selectformat.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selecttype.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selecttype.gif
new file mode 100644
index 0000000..22247a9
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/selecttype.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/sigma.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/sigma.gif
new file mode 100644
index 0000000..07a0b64
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/sigma.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/stockcharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/stockcharticon.gif
new file mode 100644
index 0000000..29fc9ab
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/stockcharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tooltip.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tooltip.gif
new file mode 100644
index 0000000..6a818a0
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tooltip.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tubecharticon.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tubecharticon.gif
new file mode 100644
index 0000000..bb663de
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/tubecharticon.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_anti_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_anti_rotation.gif
new file mode 100644
index 0000000..02673b2
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_anti_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_rotation.gif
new file mode 100644
index 0000000..5399cb7
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/x_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_anti_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_anti_rotation.gif
new file mode 100644
index 0000000..035a84c
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_anti_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_rotation.gif
new file mode 100644
index 0000000..941fe96
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/y_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_anti_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_anti_rotation.gif
new file mode 100644
index 0000000..40a0d06
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_anti_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_rotation.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_rotation.gif
new file mode 100644
index 0000000..36894fd
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/obj16/z_rotation.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/bubblechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/bubblechartimage.gif
new file mode 100644
index 0000000..77f7bbf
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/bubblechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwatermark.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwatermark.gif
new file mode 100644
index 0000000..2f5b4e6
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwatermark.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwizardtaskbar.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwizardtaskbar.gif
new file mode 100644
index 0000000..0d45734
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/chartwizardtaskbar.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/differencechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/differencechartimage.gif
new file mode 100644
index 0000000..31a7144
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/differencechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/ganttchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/ganttchartimage.gif
new file mode 100644
index 0000000..dd1df91
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/ganttchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalbubblechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalbubblechartimage.gif
new file mode 100644
index 0000000..52c4c40
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalbubblechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontaldifferencechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontaldifferencechartimage.gif
new file mode 100644
index 0000000..6ef99c6
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontaldifferencechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalganttchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalganttchartimage.gif
new file mode 100644
index 0000000..effc49f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalganttchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartimage.gif
new file mode 100644
index 0000000..8e4966a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartwithdepthimage.gif
new file mode 100644
index 0000000..ca4cbc0
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartimage.gif
new file mode 100644
index 0000000..abaabba
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartwithdepthimage.gif
new file mode 100644
index 0000000..1681948
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedbarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartimage.gif
new file mode 100644
index 0000000..f3b0bbe
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartwithdepthimage.gif
new file mode 100644
index 0000000..86a2eea
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartimage.gif
new file mode 100644
index 0000000..ccb5d7d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartwithdepthimage.gif
new file mode 100644
index 0000000..e18ae82
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedlinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartimage.gif
new file mode 100644
index 0000000..0bf4283
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..cfb06bd
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedpyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartimage.gif
new file mode 100644
index 0000000..0379e4f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartwithdepthimage.gif
new file mode 100644
index 0000000..5b7ab75
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalpercentstackedtubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalscatterchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalscatterchartimage.gif
new file mode 100644
index 0000000..2135f4e
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalscatterchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachart3dimage.gif
new file mode 100644
index 0000000..b6a46ab
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartimage.gif
new file mode 100644
index 0000000..66125ec
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartwithdepthimage.gif
new file mode 100644
index 0000000..44faa2f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchart3dimage.gif
new file mode 100644
index 0000000..de95549
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartimage.gif
new file mode 100644
index 0000000..ff647c2
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartwithdepthimage.gif
new file mode 100644
index 0000000..fe4d62d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidebarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechart3dimage.gif
new file mode 100644
index 0000000..41f09ee
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartimage.gif
new file mode 100644
index 0000000..71fe644
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartwithdepthimage.gif
new file mode 100644
index 0000000..cde6a03
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysideconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinecha.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinecha.gif
new file mode 100644
index 0000000..89cdfa8
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinecha.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechart3dimage.gif
new file mode 100644
index 0000000..c3b63cf
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartimage.gif
new file mode 100644
index 0000000..450cc0d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartwithdepthimage.gif
new file mode 100644
index 0000000..5d92a69
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidelinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchart3dimage.gif
new file mode 100644
index 0000000..f2bf089
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartimage.gif
new file mode 100644
index 0000000..8c8310d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..8bc1ecc
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidepyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechart3dimage.gif
new file mode 100644
index 0000000..92d0481
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartimage.gif
new file mode 100644
index 0000000..2e4dab8
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartwithdepthimage.gif
new file mode 100644
index 0000000..bb2dc6a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalsidebysidetubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartimage.gif
new file mode 100644
index 0000000..3d4b2ff
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartwithdepthimage.gif
new file mode 100644
index 0000000..f009bc0
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartimage.gif
new file mode 100644
index 0000000..eed6259
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartwithdepthimage.gif
new file mode 100644
index 0000000..0bc5ad1
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedbarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartimage.gif
new file mode 100644
index 0000000..b36c42b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartwithdepthimage.gif
new file mode 100644
index 0000000..ee24515
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartimage.gif
new file mode 100644
index 0000000..966e27a
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartwithdepthimage.gif
new file mode 100644
index 0000000..4d92593
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedlinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartimage.gif
new file mode 100644
index 0000000..acfbbc4
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..c303409
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedpyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartimage.gif
new file mode 100644
index 0000000..2e43be6
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartwithdepthimage.gif
new file mode 100644
index 0000000..a6eb2f0
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstackedtubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartbarstickimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartbarstickimage.gif
new file mode 100644
index 0000000..f6378b8
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartbarstickimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartimage.gif
new file mode 100644
index 0000000..2253d45
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/horizontalstockchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartimage.gif
new file mode 100644
index 0000000..537e8e5
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartsuperimposedimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartsuperimposedimage.gif
new file mode 100644
index 0000000..8f327f2
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/meterchartsuperimposedimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartimage.gif
new file mode 100644
index 0000000..d6e30dc
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartwithdepthimage.gif
new file mode 100644
index 0000000..be91223
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartimage.gif
new file mode 100644
index 0000000..5ebb29b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartwithdepthimage.gif
new file mode 100644
index 0000000..aee23d8
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedbarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartimage.gif
new file mode 100644
index 0000000..afd4459
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartwithdepthimage.gif
new file mode 100644
index 0000000..70d4bfd
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartimage.gif
new file mode 100644
index 0000000..1468070
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartwithdepthimage.gif
new file mode 100644
index 0000000..74fbdf5
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedlinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartimage.gif
new file mode 100644
index 0000000..a90ead3
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..b80560d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedpyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartimage.gif
new file mode 100644
index 0000000..4d0ce69
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartwithdepthimage.gif
new file mode 100644
index 0000000..0599a6d
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/percentstackedtubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartimage.gif
new file mode 100644
index 0000000..36bf9ad
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartwithdepthimage.gif
new file mode 100644
index 0000000..e2c3b15
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/piechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/scatterchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/scatterchartimage.gif
new file mode 100644
index 0000000..9acd6f5
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/scatterchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachart3dimage.gif
new file mode 100644
index 0000000..bfac179
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartimage.gif
new file mode 100644
index 0000000..8dc7907
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartwithdepthimage.gif
new file mode 100644
index 0000000..c7cd5da
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchart3dimage.gif
new file mode 100644
index 0000000..072645b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartimage.gif
new file mode 100644
index 0000000..4e48428
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartwithdepthimage.gif
new file mode 100644
index 0000000..b18b048
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidebarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechart3dimage.gif
new file mode 100644
index 0000000..15e6b0b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartimage.gif
new file mode 100644
index 0000000..7d52ce9
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartwithdepthimage.gif
new file mode 100644
index 0000000..1a2e057
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysideconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechart3dimage.gif
new file mode 100644
index 0000000..0845a31
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartimage.gif
new file mode 100644
index 0000000..8dedeff
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartwithdepthimage.gif
new file mode 100644
index 0000000..ddddc80
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidelinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchart3dimage.gif
new file mode 100644
index 0000000..2f495f2
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartimage.gif
new file mode 100644
index 0000000..1dc4882
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..abdf5ad
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidepyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechart3dimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechart3dimage.gif
new file mode 100644
index 0000000..21fd9f5
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechart3dimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartimage.gif
new file mode 100644
index 0000000..f899f06
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartwithdepthimage.gif
new file mode 100644
index 0000000..d62992e
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/sidebysidetubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartimage.gif
new file mode 100644
index 0000000..67d76ab
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartwithdepthimage.gif
new file mode 100644
index 0000000..e0ec39b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedareachartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartimage.gif
new file mode 100644
index 0000000..63e5964
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartwithdepthimage.gif
new file mode 100644
index 0000000..d18b69b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedbarchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartimage.gif
new file mode 100644
index 0000000..859980f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartwithdepthimage.gif
new file mode 100644
index 0000000..0b23551
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedconechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartimage.gif
new file mode 100644
index 0000000..595f2ba
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartwithdepthimage.gif
new file mode 100644
index 0000000..784bb23
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedlinechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartimage.gif
new file mode 100644
index 0000000..d9d7766
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartwithdepthimage.gif
new file mode 100644
index 0000000..7476b06
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedpyramidchartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartimage.gif
new file mode 100644
index 0000000..056eda8
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartwithdepthimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartwithdepthimage.gif
new file mode 100644
index 0000000..cbb12fc
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stackedtubechartwithdepthimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartbarstickimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartbarstickimage.gif
new file mode 100644
index 0000000..c373188
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartbarstickimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartimage.gif b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartimage.gif
new file mode 100644
index 0000000..f69c7fa
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/icons/wizban/stockchartimage.gif
Binary files differ
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.properties b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.properties
new file mode 100644
index 0000000..f9609b4
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.properties
@@ -0,0 +1,31 @@
+# /**
+#  * <copyright>
+#  *
+#  * Copyright (c) 2009 Metascape, LLC.
+#  * All rights reserved.   This program and the accompanying materials
+#  * are made available under the terms of the Eclipse Public License v1.0
+#  * which accompanies this distribution, and is available at
+#  * http://www.eclipse.org/legal/epl-v10.html
+#  * 
+#  * Contributors: 
+#  *   Metascape - Initial API and Implementation
+#  *
+#  * </copyright>
+#  *
+#  * $Id: plugin.properties
+#  */
+
+# ====================================================================
+# To code developer:
+#   Do NOT change the properties between this line and the
+#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
+#   Make a new property name, append to the end of the file and change
+#   the code to use the new property.
+# ====================================================================
+
+# ====================================================================
+# %%% END OF TRANSLATED PROPERTIES %%%
+# ====================================================================
+
+pluginName = Escape Chart Integration for Ascape
+providerName = Eclipse.org
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.xml b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.xml
new file mode 100644
index 0000000..e8f54fc
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/plugin.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+  <extension
+        id="org.eclipse.amp.escape.customizer"
+        name="Customizers"
+        point="org.eclipse.ui.views">
+     <view
+           allowMultiple="false"
+           category="org.eclipse.amp.axf.views"
+           class="org.eclipse.amp.escape.ascape.chart.ChartCustomizer"
+           icon="icons/obj16/selectformat.gif"
+           id="org.eclipse.amp.view.customizer.Chart"
+           name="Chart Customizer"
+           restorable="true">
+     </view>
+  </extension>
+  <extension
+        point="org.eclipse.ui.perspectiveExtensions">
+     <perspectiveExtension
+           targetID="org.eclipse.amp.axf.ExecutionPerspective">
+        <view
+              id="org.eclipse.amp.view.customizer.Chart"
+              relationship="stack"
+              relative="org.eclipse.ui.views.PropertySheet"
+              visible="true">
+        </view>
+        <viewShortcut
+              id="org.eclipse.amp.view.customizer.Chart">
+        </viewShortcut>
+     </perspectiveExtension>
+  </extension>
+
+  <extension
+        point="org.eclipse.core.runtime.adapters">
+     <factory
+           adaptableType="org.eclipse.amp.escape.ascape.wrap.ScapeWrapperModel"
+           class="org.eclipse.amp.escape.ascape.chart.AscapeChartAdapterFactory">
+        <adapter
+              type="org.eclipse.amp.agf.chart.IDataProvider">
+        </adapter>
+     </factory>
+  </extension>
+  <extension
+        point="org.eclipse.ui.viewActions">
+     <viewContribution
+           id="org.eclipse.amp.view.customizer.Chart.clear"
+           targetID="org.eclipse.amp.view.customizer.Chart">
+        <action
+              class="org.eclipse.amp.escape.ascape.chart.ClearSelectionAction"
+              icon="icons/obj16/progress_rem.gif"
+              id="org.eclipse.amp.escape.charts.dataclear"
+              label="Clear Selection"
+              menubarPath="additions"
+              state="false"
+              toolbarPath="customGroup"
+              tooltip="Clear all selected chart series.">
+        </action>
+     </viewContribution>
+  </extension>
+</plugin>
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeChartAdapterFactory.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeChartAdapterFactory.java
new file mode 100644
index 0000000..81e0e9b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeChartAdapterFactory.java
@@ -0,0 +1,36 @@
+package org.eclipse.amp.escape.ascape.chart;
+
+import org.eclipse.amp.agf.chart.IDataProvider;
+import org.eclipse.core.runtime.IAdapterFactory;
+
+// TODO: Auto-generated Javadoc
+/**
+ * A factory for creating ScapeAdapter objects.
+ */
+public class AscapeChartAdapterFactory implements IAdapterFactory {
+    private static final Class[] TYPES = {
+        IDataProvider.class };
+
+    /**
+     * @param adaptableObject
+     * @param adapterType
+     * @return
+     * @see org.eclipse.core.runtime.IAdapterFactory#getAdapter(java.lang.Object, java.lang.Class)
+     */
+    public Object getAdapter(Object adaptableObject, Class adapterType) {
+        if (adapterType == IDataProvider.class) {
+            return new AscapeDataProvider();
+        }
+        return null;
+    }
+
+    /**
+     * @return
+     * @see org.eclipse.core.runtime.IAdapterFactory#getAdapterList()
+     */
+    public Class[] getAdapterList() {
+        // TODO Auto-generated method stub
+        return TYPES;
+    }
+
+}
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeDataProvider.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeDataProvider.java
new file mode 100644
index 0000000..cfb56e0
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/AscapeDataProvider.java
@@ -0,0 +1,163 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2009 Metascape, LLC.
+ * All rights reserved.   This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors: 
+ *   Metascape - Initial API and Implementation
+ *
+ * </copyright>
+ *
+*/
+package org.eclipse.amp.escape.ascape.chart;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Observable;
+import java.util.Observer;
+
+import org.ascape.model.Scape;
+import org.ascape.util.data.DataSelection;
+import org.ascape.util.data.DataSeriesStore;
+import org.eclipse.amp.agf.chart.IDataProvider;
+import org.eclipse.amp.agf.chart.IDataSelectionListener;
+import org.eclipse.amp.escape.ascape.wrap.ScapeWrapperModel;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.swt.graphics.Image;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class AscapeDataProvider.
+ */
+public class AscapeDataProvider implements IDataProvider, ILabelProvider {
+
+    Map<Scape, DataSelection> dataSelectionForScape = new HashMap<Scape, DataSelection>();
+
+    Map<IDataSelectionListener, Observer> observerForListener = new HashMap<IDataSelectionListener, Observer>();
+
+    /**
+     * @param model
+     * @return
+     * @see org.eclipse.amp.agf.chart.IDataProvider#getDataSource(java.lang.Object)
+     */
+    public Object getDataSource(Object model) {
+        Scape scape = ((ScapeWrapperModel) model).getScape();
+        DataSelection dataSelection = dataSelectionForScape.get(scape);
+        if (dataSelection == null) {
+            dataSelection = new DataSelection();
+            dataSelection.setData(scape.getData());
+            dataSelectionForScape.put(scape, dataSelection);
+        }
+        return dataSelection;
+    }
+
+    /**
+     * @param dataSource
+     * @return
+     * @see org.eclipse.amp.agf.chart.IDataProvider#getCategoryLabels(java.lang.Object)
+     */
+    @SuppressWarnings("unchecked")
+    public List<String> getCategoryLabels(Object dataSource) {
+        return ((DataSelection) dataSource).getData().getPeriods();
+    }
+
+    /**
+     * @param valueSource
+     * @return
+     * @see org.eclipse.amp.agf.chart.IDataProvider#getValues(java.lang.Object)
+     */
+    public Object getValues(Object valueSource) {
+        return ((DataSeriesStore) valueSource).toList();
+    }
+
+    /**
+     * @param valueSelection
+     * @return
+     * @see org.eclipse.amp.agf.chart.IDataProvider#getValueSets(java.lang.Object)
+     */
+    public List getValueSets(Object valueSelection) {
+        return ((DataSelection) valueSelection).getSelectedSeries();
+    }
+
+    // TODO use normal selection paradigm?
+    /**
+     * @param dataSource
+     * @param listener
+     * @see org.eclipse.amp.agf.chart.IDataProvider#addListener(java.lang.Object, org.eclipse.amp.agf.chart.IDataSelectionListener)
+     */
+    public void addListener(final Object dataSource, final IDataSelectionListener listener) {
+        DataSelection selection = (DataSelection) dataSource;
+        Observer observer = new Observer() {
+            public void update(Observable arg0, Object arg1) {
+                listener.selectionChanged(dataSource);
+            }
+        };
+        selection.addObserver(observer);
+    }
+
+    /**
+     * @param dataSource
+     * @param listener
+     * @see org.eclipse.amp.agf.chart.IDataProvider#removeListener(java.lang.Object, org.eclipse.amp.agf.chart.IDataSelectionListener)
+     */
+    public void removeListener(final Object dataSource, IDataSelectionListener listener) {
+        DataSelection selection = (DataSelection) dataSource;
+        Observer observer = observerForListener.get(listener);
+        selection.deleteObserver(observer);
+    }
+
+    /**
+     * @param element
+     * @return
+     * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
+     */
+    public Image getImage(Object element) {
+        return null;
+    }
+
+    /**
+     * @param valueSource
+     * @return
+     * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
+     */
+    public String getText(Object valueSource) {
+        return ((DataSeriesStore) valueSource).getName();
+    }
+
+    /**
+     * @param listener
+     * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
+     */
+    public void addListener(ILabelProviderListener listener) {
+    }
+
+    /**
+     * 
+     * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
+     */
+    public void dispose() {
+    }
+
+    /**
+     * @param element
+     * @param property
+     * @return
+     * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
+     */
+    public boolean isLabelProperty(Object element, String property) {
+        return false;
+    }
+
+    /**
+     * @param listener
+     * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
+     */
+    public void removeListener(ILabelProviderListener listener) {
+    }
+}
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ChartCustomizer.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ChartCustomizer.java
new file mode 100644
index 0000000..1e118c4
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ChartCustomizer.java
@@ -0,0 +1,446 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2009 Metascape, LLC.
+ * All rights reserved.   This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ *   Metascape - Initial API and Implementation
+ *
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.escape.ascape.chart;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.ascape.model.Scape;
+import org.ascape.util.data.DataSelection;
+import org.ascape.util.data.DataSeries;
+import org.ascape.util.data.StatCollector;
+import org.eclipse.amp.agf.chart.ChartEditPart;
+import org.eclipse.amp.agf.chart.ChartViewPart;
+import org.eclipse.amp.escape.ascape.wrap.ScapeWrapperModel;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.CellEditor;
+import org.eclipse.jface.viewers.CheckboxCellEditor;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.ColumnPixelData;
+import org.eclipse.jface.viewers.ColumnViewer;
+import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.EditingSupport;
+import org.eclipse.jface.viewers.ITableLabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.TableLayout;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TableViewerColumn;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.GC;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IPartListener;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.part.ViewPart;
+import org.eclipse.ui.statushandlers.StatusManager;
+
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class ChartCustomizer.
+ */
+public class ChartCustomizer extends ViewPart {
+
+    protected Scape scape;
+    protected DataSelection dataSelection;
+    protected ChartEditPart chartEditPart;
+    private TableViewer selectTable;
+    private Composite control;
+    private DisposeListener chartDisposeListener;
+    private ArrayContentProvider statTableProvider;
+    private StatTableItemProvider statTableLabelProvider;
+
+    /**
+     * The Class StatTableItemProvider.
+     */
+    class StatTableItemProvider extends LabelProvider implements ITableLabelProvider {
+
+        /**
+         * @param element
+         * @param columnIndex
+         * @return
+         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
+         */
+        public String getColumnText(Object element, int columnIndex) {
+            if (columnIndex > 0) {
+                return StatCollector.getAllMeasureNamesShort()[columnIndex - 1];
+            } else {
+                return ((StatCollector) element).getName();
+            }
+        }
+
+        /**
+         * @param element
+         * @param columnIndex
+         * @return
+         * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, int)
+         */
+        public Image getColumnImage(Object element, int columnIndex) {
+            return null;
+        }
+    }
+
+    /**
+     * The Class MeasureEditSupport.
+     */
+    class MeasureEditSupport extends EditingSupport {
+        int measureNumber;
+        Map<Object, CheckboxCellEditor> checkBoxFor = new HashMap<Object, CheckboxCellEditor>();
+
+        /**
+         * Instantiates a new measure edit support.
+         * 
+         * @param viewer the viewer
+         * @param measureNumber the measure number
+         */
+        public MeasureEditSupport(ColumnViewer viewer, int measureNumber) {
+            super(viewer);
+            this.measureNumber = measureNumber;
+        }
+
+        private DataSeries getDataSeries(Object id) {
+            return ((StatCollector) id).getAllDataSeries()[measureNumber];
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.EditingSupport#canEdit(java.lang.Object)
+         */
+        @Override
+        protected boolean canEdit(Object element) {
+            return getDataSeries(element) != null;
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.EditingSupport#getCellEditor(java.lang.Object)
+         */
+        @Override
+        protected CellEditor getCellEditor(final Object element) {
+            CheckboxCellEditor checkboxCellEditor = checkBoxFor.get(element);
+            if (checkboxCellEditor == null) {
+                checkboxCellEditor = new CheckboxCellEditor(selectTable.getTable(), SWT.FULL_SELECTION);
+            }
+            return checkboxCellEditor;
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.EditingSupport#getValue(java.lang.Object)
+         */
+        @Override
+        protected Object getValue(Object element) {
+            if (dataSelection != null && getDataSeries(element) != null) {
+                return dataSelection.isSelected(getDataSeries(element));
+            } else {
+                return false;
+            }
+        }
+
+        /**
+         * @param element
+         * @param value
+         * @see org.eclipse.jface.viewers.EditingSupport#setValue(java.lang.Object, java.lang.Object)
+         */
+        @Override
+        protected void setValue(Object element, Object value) {
+            if (dataSelection != null) {
+                DataSeries dataSeries = getDataSeries(element);
+                if (dataSeries != null) {
+                    dataSelection.setSelected(dataSeries, (Boolean) value);
+                }
+                // chartEditor.getSite().getPage().activate(chartEditor);
+                getSite().getShell().getDisplay().asyncExec(new Runnable() {
+                    public void run() {
+                        chartEditPart.refresh();
+                    };
+                });
+                getSite().getShell().getDisplay().asyncExec(new Runnable() {
+                    public void run() {
+                        selectTable.refresh(true);
+                    };
+                });
+            }
+        }
+    }
+
+    /**
+     * The Class MeasureLabelProvider.
+     */
+    class MeasureLabelProvider extends ColumnLabelProvider {
+        int measureNumber;
+
+        /**
+         * Instantiates a new measure label provider.
+         * 
+         * @param measureNumber the measure number
+         */
+        public MeasureLabelProvider(int measureNumber) {
+            this.measureNumber = measureNumber;
+        }
+
+        private DataSeries getDataSeries(Object id) {
+            return ((StatCollector) id).getAllDataSeries()[measureNumber];
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.ColumnLabelProvider#getText(java.lang.Object)
+         */
+        public String getText(Object element) {
+            return null;
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.ColumnLabelProvider#getImage(java.lang.Object)
+         */
+        @Override
+        public Image getImage(Object element) {
+            if (dataSelection != null) {
+                DataSeries dataSeries = getDataSeries(element);
+                if (dataSeries != null && dataSelection.isSelected(dataSeries)) {
+                    Image i = new Image(getSite().getWorkbenchWindow().getShell().getDisplay(), 30, 10);
+                    GC gc = new GC(i);
+                    String name = dataSeries.getName();
+                    Color seriesColor = chartEditPart.getSeriesColorProvider().getForeground(name);
+                    if (seriesColor != null) {
+                        gc.setForeground(seriesColor);
+                    } else {
+                        StatusManager.getManager().handle(
+                                                          new Status(Status.WARNING, "org.eclipse.amp.agf.chart",
+                                                                     "No cached color for " + name));
+                    }
+                    gc.setLineWidth(3);
+                    gc.drawLine(0, 5, 30, 5);
+                    return i;
+                }
+            }
+            return null;
+        }
+
+        /**
+         * @param element
+         * @return
+         * @see org.eclipse.jface.viewers.ColumnLabelProvider#getBackground(java.lang.Object)
+         */
+        public Color getBackground(Object element) {
+            DataSeries dataSeries = getDataSeries(element);
+            if (dataSeries == null) {
+                return org.eclipse.draw2d.ColorConstants.lightGray;
+            } else {
+                // if (dataSelection.isSelected(dataSeries)) {
+                // return seriesColor(dataSeries);
+                // } else {
+                return org.eclipse.draw2d.ColorConstants.white;
+                // }
+            }
+        }
+    }
+
+    /**
+     * Check enabled state.
+     */
+    void checkEnabledState() {
+        if (control != null) {
+            control.setEnabled(chartEditPart != null);
+        }
+    }
+
+    /**
+     * @param parent
+     * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
+     */
+    public void createPartControl(Composite parent) {
+        // Overall
+        control = new Composite(parent, SWT.HORIZONTAL);
+        GridLayout allLayout = new GridLayout();
+        allLayout.numColumns = 2;
+        control.setLayout(allLayout);
+        checkEnabledState();
+
+        // Chart settings
+        Composite general = new Composite(control, SWT.NO_SCROLL);
+        GridLayout generalLayout = new GridLayout();
+        generalLayout.numColumns = 1;
+        general.setLayout(generalLayout);
+        general.setLayoutData(new GridData(SWT.BEGINNING, SWT.FILL, false, true));
+        chartDisposeListener = new DisposeListener() {
+            public void widgetDisposed(DisposeEvent e) {
+                setInput(null);
+            }
+        };
+
+        /*
+         * // Group chartTypeGroup = new Group(general, SWT.NO_SCROLL); final Label label = new Label(general,
+         * SWT.NONE); label.setText("Chart Type"); ToolBar chartTypeBar = new ToolBar(general, SWT.FLAT | SWT.WRAP |
+         * SWT.RIGHT); final ToolItem lineButton = new ToolItem(chartTypeBar, SWT.RADIO);
+         * lineButton.setToolTipText("Line Chart");
+         * lineButton.setImage(Activator.imageDescriptorFromPlugin("org.eclipse.amp.escape.charts",
+         * "icons/obj16/linecharticon.gif").createImage()); final ToolItem areaButton = new ToolItem(chartTypeBar,
+         * SWT.RADIO); areaButton.setToolTipText("Area Chart");
+         * areaButton.setImage(Activator.imageDescriptorFromPlugin("org.eclipse.amp.escape.charts",
+         * "icons/obj16/areacharticon.gif").createImage()); final ToolItem pieButton = new ToolItem(chartTypeBar,
+         * SWT.RADIO); pieButton.setToolTipText("Pie Chart");
+         * pieButton.setImage(Activator.imageDescriptorFromPlugin("org.eclipse.amp.escape.charts",
+         * "icons/obj16/piecharticon.gif").createImage()); SelectionListener chartTypeListener = new SelectionListener()
+         * { public void widgetDefaultSelected(SelectionEvent e) { }
+         * 
+         * public void widgetSelected(SelectionEvent e) { if (lineButton.getSelection()) { label.setText("Line"); } if
+         * (areaButton.getSelection()) { label.setText("Area"); } if (pieButton.getSelection()) { label.setText("Pie");
+         * } } }; lineButton.addSelectionListener(chartTypeListener);
+         * areaButton.addSelectionListener(chartTypeListener); pieButton.addSelectionListener(chartTypeListener);
+         * 
+         * final Button displayLegendButton = new Button(general, SWT.CHECK);
+         * displayLegendButton.setToolTipText("Show Legend");
+         * displayLegendButton.setImage(Activator.imageDescriptorFromPlugin("org.eclipse.amp.escape.charts",
+         * "icons/obj16/rectangle_multitype.gif") .createImage()); displayLegendButton.addSelectionListener(new
+         * SelectionListener() { public void widgetDefaultSelected(SelectionEvent e) { // TODO Auto-generated method
+         * stub
+         * 
+         * }
+         * 
+         * public void widgetSelected(SelectionEvent e) { Legend legend = chartView.getChart().getLegend();
+         * legend.setVisible(displayLegendButton.getSelection()); } });
+         */
+
+        // Chart series selection
+        buildTable();
+        getViewSite().getPage().addPartListener(new IPartListener() {
+            public void partActivated(IWorkbenchPart part) {
+                if (part instanceof ChartViewPart) {
+                    setInput(((ChartViewPart) part).getEditPart());
+                }
+            }
+
+            public void partBroughtToTop(IWorkbenchPart part) {
+            }
+
+            public void partClosed(IWorkbenchPart part) {
+            }
+
+            public void partDeactivated(IWorkbenchPart part) {
+            }
+
+            public void partOpened(IWorkbenchPart part) {
+            }
+
+        });
+    }
+
+    private void buildTable() {
+        selectTable = new TableViewer(control, SWT.H_SCROLL);
+
+        statTableProvider = new ArrayContentProvider();
+        selectTable.setContentProvider(statTableProvider);
+        statTableLabelProvider = new StatTableItemProvider();
+        selectTable.setLabelProvider(statTableLabelProvider);
+        Table statTable = selectTable.getTable();
+        statTable.setHeaderVisible(true);
+        TableLayout layout = new TableLayout();
+        statTable.setLayout(layout);
+        layout.addColumnData(new ColumnWeightData(200));
+        selectTable.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+        TableViewerColumn statNameColumn = new TableViewerColumn(selectTable, SWT.LEFT);
+        statNameColumn.getColumn().setText("Name");
+        statNameColumn.setLabelProvider(new ColumnLabelProvider() {
+            public String getText(Object element) {
+                return ((StatCollector) element).getName();
+            }
+        });
+        int i = 0;
+        for (String name : StatCollector.getAllMeasureNamesShort()) {
+            layout.addColumnData(new ColumnPixelData(40));
+            TableViewerColumn viewerColumn = new TableViewerColumn(selectTable, SWT.CENTER | SWT.CHECK
+                                                                   | SWT.FULL_SELECTION);
+            viewerColumn.getColumn().setText(name);
+            viewerColumn.setLabelProvider(new MeasureLabelProvider(i));
+            viewerColumn.setEditingSupport(new MeasureEditSupport(selectTable, i));
+            i++;
+        }
+        selectTable.refresh();
+    }
+
+    /**
+     * Sets the input.
+     * 
+     * @param object the new input
+     */
+    public void setInput(Object object) {
+        if (object instanceof ChartEditPart) {
+            if (chartEditPart != null && chartEditPart.getViewer().getControl() != null) {
+                chartEditPart.getViewer().getControl().removeDisposeListener(chartDisposeListener);
+            }
+            chartEditPart = (ChartEditPart) object;
+            scape = ((ScapeWrapperModel) chartEditPart.getModel()).getScape();
+            if (scape.getData() != null) {
+                dataSelection = (DataSelection) chartEditPart.getDataProvider().getDataSource(chartEditPart.getModel());
+                selectTable.setContentProvider(statTableProvider);
+                selectTable.setInput(scape.getData().getStatCollectors());
+            }
+            chartEditPart.getViewer().getControl().addDisposeListener(chartDisposeListener);
+        } else {
+            chartEditPart.getViewer().getControl().removeDisposeListener(chartDisposeListener);
+            chartEditPart = null;
+            dataSelection = null;
+            if (control != null) {
+                control.setEnabled(false);
+            }
+            selectTable.setInput(null);
+        }
+        checkEnabledState();
+        selectTable.refresh(true);
+    }
+
+    /**
+     * 
+     * @see org.eclipse.ui.part.WorkbenchPart#setFocus()
+     */
+    @Override
+    public void setFocus() {
+    }
+
+
+    /**
+     * Sets the action bars.
+     * 
+     * @param actionBars the new action bars
+     */
+    public void setActionBars(IActionBars actionBars) {
+    }
+
+    public ChartEditPart getChartEditPart() {
+        return chartEditPart;
+    }
+
+    public void refresh() {
+        selectTable.refresh();
+    }
+}
\ No newline at end of file
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ClearSelectionAction.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ClearSelectionAction.java
new file mode 100644
index 0000000..7c33c01
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/ClearSelectionAction.java
@@ -0,0 +1,59 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2009 Metascape, LLC.
+ * All rights reserved.   This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ *   Metascape - Initial API and Implementation
+ *
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.escape.ascape.chart;
+
+import org.ascape.util.data.DataSelection;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IViewActionDelegate;
+import org.eclipse.ui.IViewPart;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The Class DisplayLegendAction.
+ */
+public class ClearSelectionAction implements IViewActionDelegate {
+
+    ChartCustomizer customizer;
+
+    /**
+     * 
+     * @see org.eclipse.ui.IActionDelegate#run(org.eclipse.jface.action.IAction)
+     */
+    public void run(IAction action) {
+        DataSelection selection = (DataSelection) ((AscapeDataProvider) customizer.getChartEditPart().getDataProvider())
+        .getDataSource(customizer.getChartEditPart().getModel());
+        selection.clearSelection();
+        customizer.refresh();
+    }
+
+    /**
+     * 
+     * @see org.eclipse.ui.IViewActionDelegate#init(org.eclipse.ui.IViewPart)
+     */
+    public void init(IViewPart view) {
+        customizer = (ChartCustomizer) view;
+    }
+
+    /**
+     * 
+     * @see org.eclipse.ui.IActionDelegate#selectionChanged(org.eclipse.jface.action.IAction,
+     *      org.eclipse.jface.viewers.ISelection)
+     */
+    public void selectionChanged(IAction action, ISelection selection) {
+    }
+
+}
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/EscapeAscapeChartPlugin.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/EscapeAscapeChartPlugin.java
new file mode 100644
index 0000000..99ec56b
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ascape.chart/src/org/eclipse/amp/escape/ascape/chart/EscapeAscapeChartPlugin.java
@@ -0,0 +1,76 @@
+/**
+ * <copyright>
+ *
+ * Copyright (c) 2009 Metascape, LLC.
+ * All rights reserved.   This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors: 
+ *   Metascape - Initial API and Implementation
+ *
+ * </copyright>
+ *
+*/
+package org.eclipse.amp.escape.ascape.chart;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+// TODO: Auto-generated Javadoc
+/**
+ * The activator class controls the plug-in life cycle.
+ */
+public class EscapeAscapeChartPlugin extends AbstractUIPlugin {
+
+	// The plug-in ID
+	public static final String PLUGIN_ID = "org.eclipse.amp.escape.ascape.chart";
+
+	// The shared instance
+	private static EscapeAscapeChartPlugin plugin;
+	
+	/**
+     * The constructor.
+     */
+	public EscapeAscapeChartPlugin() {
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+	 */
+	/**
+	 * @param context
+	 * @throws Exception
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+	 */
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+	 */
+	/**
+	 * @param context
+	 * @throws Exception
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+	 */
+	public void stop(BundleContext context) throws Exception {
+		plugin = null;
+		super.stop(context);
+	}
+
+	/**
+     * Returns the shared instance.
+     * 
+     * @return the shared instance
+     */
+	public static EscapeAscapeChartPlugin getDefault() {
+		return plugin;
+	}
+
+}
