diff --git a/README.md b/README.md
index 4ae8e48..de770bf 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,6 @@
# rtcar
+数据库各类业务脚本见carrentalmanagement.txt文件
+具体数据库脚本为carrentalmanagement.sql文件
+使用的高级语言查询为java,环境为eclipse,导入web项目后运行customersDAO类完成对数据库的连接及增删改查;
+将customer表封装为cistomer类
diff --git a/car/GYK/.classpath b/car/GYK/.classpath
new file mode 100644
index 0000000..4d47f3c
--- /dev/null
+++ b/car/GYK/.classpath
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.metadata/.lock b/car/GYK/.metadata/.lock
new file mode 100644
index 0000000..e69de29
diff --git a/car/GYK/.metadata/.log b/car/GYK/.metadata/.log
new file mode 100644
index 0000000..c579186
--- /dev/null
+++ b/car/GYK/.metadata/.log
@@ -0,0 +1,62 @@
+!SESSION 2024-12-29 11:15:19.531 -----------------------------------------------
+eclipse.buildId=4.22.0.I20211124-1800
+java.version=17.0.1
+java.vendor=Eclipse Adoptium
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=zh_CN
+Framework arguments: -product org.eclipse.epp.package.jee.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product
+
+!ENTRY org.eclipse.jface 2 0 2024-12-29 11:16:55.413
+!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation.
+!SUBENTRY 1 org.eclipse.jface 2 0 2024-12-29 11:16:55.414
+!MESSAGE A conflict occurred for CTRL+SHIFT+T:
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type,
+ Open a type in a Java editor,
+ Category(org.eclipse.ui.category.navigate,Navigate,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5562f297,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(CTRL+SHIFT+T,
+ ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace,
+ ,
+ Category(org.eclipse.lsp4e.category,Language Servers,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@64c1a76e,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+!SUBENTRY 1 org.eclipse.jface 2 0 2024-12-29 11:16:55.414
+!MESSAGE A conflict occurred for ALT+SHIFT+R:
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring ,
+ Rename the selected element,
+ Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@2f143ea,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+Binding(ALT+SHIFT+R,
+ ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename,
+ Rename the selected item,
+ Category(org.eclipse.ui.category.file,File,null,true),
+ org.eclipse.ui.internal.WorkbenchHandlerServiceHandler@5b2c9a69,
+ ,,true),null),
+ org.eclipse.ui.defaultAcceleratorConfiguration,
+ org.eclipse.ui.contexts.window,,,system)
+
+!ENTRY org.eclipse.ui.navigator 2 0 2024-12-29 11:17:03.491
+!MESSAGE Can't find Navigator Content Descriptor with id: org.eclipse.jst.servlet.ui.EnhancedJavaRendering
+
+!ENTRY org.eclipse.ui.navigator 2 0 2024-12-29 11:17:03.492
+!MESSAGE Can't find Navigator Content Descriptor with id: org.eclipse.jst.servlet.ui.EnhancedJavaRendering
+
+!ENTRY org.eclipse.egit.ui 2 0 2024-12-29 11:17:03.527
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\gyk'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+
+!ENTRY org.eclipse.core.net 4 0 2024-12-29 11:17:09.379
+!MESSAGE WinHttp.DetectAutoProxyConfigUrl for wpad failed with error 'ûÓÐÕҵ½´úÀí·þÎñÆ÷µÄ×Զ¯ÅäÖà ' #12180.
diff --git a/car/GYK/.metadata/.mylyn/repositories.xml.zip b/car/GYK/.metadata/.mylyn/repositories.xml.zip
new file mode 100644
index 0000000..ac26733
Binary files /dev/null and b/car/GYK/.metadata/.mylyn/repositories.xml.zip differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location
new file mode 100644
index 0000000..a03a0c1
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/5/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/5/.location
new file mode 100644
index 0000000..37ab7ea
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/5/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/6/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/6/.location
new file mode 100644
index 0000000..f033808
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/6/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.location
new file mode 100644
index 0000000..67d1933
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.markers b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.markers
new file mode 100644
index 0000000..647ef63
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/.markers differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/org.eclipse.jdt.core/state.dat b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..e2d78da
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/BookManageProject/org.eclipse.jdt.core/state.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.location
new file mode 100644
index 0000000..daae266
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.markers b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.markers
new file mode 100644
index 0000000..2492ccc
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/.markers differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/org.eclipse.jdt.core/state.dat b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..e2d78da
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/ReLoBoProject/org.eclipse.jdt.core/state.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.location
new file mode 100644
index 0000000..86e01c8
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.markers b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.markers
new file mode 100644
index 0000000..dd8d9c5
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/.markers differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/org.eclipse.jdt.core/state.dat b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..e2d78da
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/RegisterAndLogin/org.eclipse.jdt.core/state.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/Servers/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/Servers/.location
new file mode 100644
index 0000000..b66f9a5
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/Servers/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.location b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.location
new file mode 100644
index 0000000..fce2e15
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.location differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.markers b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.markers
new file mode 100644
index 0000000..eb9f20a
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/.markers differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/org.eclipse.jdt.core/state.dat b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..f04f3bd
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.projects/sql/org.eclipse.jdt.core/state.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
new file mode 100644
index 0000000..25cb955
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
new file mode 100644
index 0000000..a033ec1
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
new file mode 100644
index 0000000..6b2aaa7
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree
new file mode 100644
index 0000000..f812ac7
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
new file mode 100644
index 0000000..336be29
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..dffc6b5
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+version=1
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..a84e30e
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=17
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
new file mode 100644
index 0000000..31df02c
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
new file mode 100644
index 0000000..c3d7c24
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.launching.PREF_VM_XML=\r\n\r\n \r\n \r\n \r\n\r\n
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..3d8683b
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,10 @@
+content_assist_proposals_background=255,255,255
+content_assist_proposals_foreground=0,0,0
+eclipse.preferences.version=1
+org.eclipse.jdt.internal.ui.navigator.layout=2
+org.eclipse.jdt.internal.ui.navigator.librariesnode=true
+org.eclipse.jdt.ui.formatterprofiles.version=21
+spelling_locale_initialized=true
+typefilter_migrated_2=true
+useAnnotationsPrefPage=true
+useQuickDiffPrefPage=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs
new file mode 100644
index 0000000..d56c53f
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jsch.core.hasChangedDefaultWin32SshHome=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs
new file mode 100644
index 0000000..553bb96
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.j2ee.webservice.ui.prefs
@@ -0,0 +1,2 @@
+areThereWebServices=false
+eclipse.preferences.version=1
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs
new file mode 100644
index 0000000..9ca75ad
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jst.jsp.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jst.jsp.core.internal.java.search.JSPIndexManager=JSP Index v3.10_20180412_01
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
new file mode 100644
index 0000000..67b1d96
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.m2e.discovery.pref.projects=
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs
new file mode 100644
index 0000000..43e97e4
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+mylyn.attention.migrated=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs
new file mode 100644
index 0000000..8d462a6
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.mylyn.monitor.activity.tracking.enabled.checked=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs
new file mode 100644
index 0000000..5330e43
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs
@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+migrated.task.repositories.secure.store=true
+org.eclipse.mylyn.tasks.ui.filters.nonmatching=true
+org.eclipse.mylyn.tasks.ui.filters.nonmatching.encouraged=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
new file mode 100644
index 0000000..277e6ff
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+platformState=1683083437053
+quickStart=false
+tipsAndTricks=true
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs
new file mode 100644
index 0000000..b1831cd
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.navigator.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.jdt.java.ui.filters.HidePackageDeclaration\:org.eclipse.jdt.java.ui.filters.HideOutputFolder\:org.eclipse.buildship.ui.navigator.filter.gradle.subProject\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.buildship.ui.navigator.filter.gradle.buildfolder\:org.eclipse.jdt.java.ui.filters.HideEmptyInnerPackages\:org.eclipse.jst.j2ee.navigator.ui.filters.jetemitters\:org.eclipse.jdt.java.ui.filters.HideInnerClassFiles\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.jdt.java.ui.filters.HideEmptyLibraryContainers\:org.eclipse.jdt.java.ui.filters.HideImportDeclaration\:org.eclipse.jdt.java.ui.filters.HideSyntheticMembers\:org.eclipse.mylyn.tasks.ui.navigator.filters.tasks\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
new file mode 100644
index 0000000..08076f2
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+showIntro=false
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
new file mode 100644
index 0000000..d40f9d6
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
@@ -0,0 +1,10 @@
+//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
+//org.eclipse.ui.commands/state/org.eclipse.wst.xml.views.XPathView.processor.xpathprocessor/org.eclipse.ui.commands.radioState=xpath10
+PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery;
+eclipse.preferences.version=1
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=255,255,255
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=255,255,255
+org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=16,16,16
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=255,255,255
+org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=255,255,255
+org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=242,242,242
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs
new file mode 100644
index 0000000..855d634
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+processedSchemes=,eclipse+command,eclipse+mpc
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/car/GYK/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
new file mode 100644
index 0000000..c875616
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
@@ -0,0 +1,2960 @@
+
+
+
+ activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration
+
+
+
+
+
+
+
+ topLevel
+ shellMaximized
+
+
+
+
+ persp.actionSet:org.eclipse.mylyn.doc.actionSet
+ persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation
+ persp.actionSet:org.eclipse.ui.cheatsheets.actionSet
+ persp.actionSet:org.eclipse.search.searchActionSet
+ persp.actionSet:org.eclipse.text.quicksearch.actionSet
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo
+ persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet
+ persp.actionSet:org.eclipse.ui.actionSet.keyBindings
+ persp.actionSet:org.eclipse.ui.actionSet.openFiles
+ persp.actionSet:org.eclipse.jst.j2ee.J2eeMainActionSet
+ persp.actionSet:org.eclipse.jdt.ui.JavaActionSet
+ persp.actionSet:org.eclipse.debug.ui.launchActionSet
+ persp.actionSet:org.eclipse.debug.ui.debugActionSet
+ persp.actionSet:org.eclipse.ui.NavigateActionSet
+ persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer
+ persp.viewSC:org.eclipse.wst.server.ui.ServersView
+ persp.viewSC:org.eclipse.datatools.connectivity.DataSourceExplorerNavigator
+ persp.viewSC:org.eclipse.ui.views.BookmarkView
+ persp.viewSC:org.eclipse.ui.views.ContentOutline
+ persp.viewSC:org.eclipse.ui.views.PropertySheet
+ persp.viewSC:org.eclipse.ui.views.ResourceNavigator
+ persp.viewSC:org.eclipse.wst.common.snippets.internal.ui.SnippetsView
+ persp.viewSC:org.eclipse.ui.views.AllMarkersView
+ persp.viewSC:org.eclipse.mylyn.tasks.ui.views.tasks
+ persp.viewSC:org.eclipse.search.ui.views.SearchView
+ persp.viewSC:org.eclipse.ui.console.ConsoleView
+ persp.showIn:org.eclipse.ui.navigator.ProjectExplorer
+ persp.actionSet:org.eclipse.wst.ws.explorer.explorer
+ persp.newWizSC:org.eclipse.m2e.core.wizards.Maven2ProjectWizard
+ persp.newWizSC:org.eclipse.wst.css.ui.internal.wizard.NewCSSWizard
+ persp.newWizSC:org.eclipse.wst.jsdt.ui.NewJSWizard
+ persp.actionSet:org.eclipse.eclemma.ui.CoverageActionSet
+ persp.showIn:org.eclipse.eclemma.ui.CoverageView
+ persp.showIn:org.eclipse.tm.terminal.view.ui.TerminalsView
+ persp.perspSC:org.eclipse.debug.ui.DebugPerspective
+ persp.perspSC:org.eclipse.jdt.ui.JavaPerspective
+ persp.perspSC:org.eclipse.ui.resourcePerspective
+ persp.perspSC:org.eclipse.wst.web.ui.webDevPerspective
+ persp.newWizSC:org.eclipse.jst.j2ee.ui.project.facet.EarProjectWizard
+ persp.newWizSC:org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard
+ persp.newWizSC:org.eclipse.jst.ejb.ui.project.facet.EjbProjectWizard
+ persp.newWizSC:org.eclipse.jst.j2ee.jca.ui.internal.wizard.ConnectorProjectWizard
+ persp.newWizSC:org.eclipse.jst.j2ee.ui.project.facet.appclient.AppClientProjectWizard
+ persp.newWizSC:org.eclipse.wst.web.ui.internal.wizards.SimpleWebProjectWizard
+ persp.newWizSC:org.eclipse.jpt.ui.wizard.newJpaProject
+ persp.newWizSC:org.eclipse.jst.servlet.ui.internal.wizard.AddServletWizard
+ persp.newWizSC:org.eclipse.jst.ejb.ui.internal.wizard.AddSessionBeanWizard
+ persp.newWizSC:org.eclipse.jst.ejb.ui.internal.wizard.AddMessageDrivenBeanWizard
+ persp.newWizSC:org.eclipse.jpt.ui.wizard.newEntity
+ persp.newWizSC:org.eclipse.jst.ws.creation.ui.wizard.serverwizard
+ persp.newWizSC:org.eclipse.ui.wizards.new.folder
+ persp.newWizSC:org.eclipse.ui.wizards.new.file
+ persp.actionSet:org.eclipse.wst.server.ui.internal.webbrowser.actionSet
+ persp.actionSet:org.eclipse.debug.ui.breakpointActionSet
+ persp.newWizSC:org.eclipse.jpt.jpa.ui.wizard.newJpaProject
+ persp.perspSC:org.eclipse.jpt.ui.jpaPerspective
+ persp.newWizSC:org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard
+
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Java
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Mylyn
+
+
+ View
+ categoryTag:General
+
+
+
+
+ active
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Server
+
+
+ View
+ categoryTag:Data Management
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+ View
+ categoryTag:General
+
+
+ View
+ categoryTag:Help
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+ org.eclipse.e4.primaryDataStack
+ EditorStack
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+
+ View
+ categoryTag:General
+ active
+ activeOnClose
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Server
+
+
+
+
+ View
+ categoryTag:Data Management
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ toolbarSeparator
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ stretch
+ SHOW_RESTORE_MENU
+
+
+ Draggable
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+
+
+ stretch
+
+
+ Draggable
+
+
+ Draggable
+
+
+
+
+ TrimStack
+ Draggable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+ locale:zh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ locale:zh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ locale:zh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ locale:zh
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ View
+ Spy
+ categoryTag:Eclipse Runtime Spies
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Editor
+ removeOnHide
+
+
+
+
+ View
+ categoryTag:Ant
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Data Management
+
+
+
+
+ View
+ categoryTag:Data Management
+
+
+
+
+ View
+ categoryTag:Data Management
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+ NoRestore
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:JPA
+
+
+
+
+ View
+ categoryTag:JPA
+
+
+
+
+ View
+ categoryTag:JavaServer Faces
+
+
+
+
+ View
+ categoryTag:JavaServer Faces
+
+
+
+
+ View
+ categoryTag:Web Services
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Oomph
+
+
+
+
+ View
+ categoryTag:API Tools
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:Plug-in Development
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Version Control (Team)
+
+
+
+
+ View
+ categoryTag:Version Control (Team)
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:Terminal
+
+
+
+
+ View
+ categoryTag:Other
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Other
+
+
+
+
+ View
+ categoryTag:Other
+
+
+
+
+ View
+ categoryTag:Other
+
+
+
+
+ View
+ categoryTag:Server
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+ glue
+ move_after:PerspectiveSpacer
+ SHOW_RESTORE_MENU
+
+
+ move_after:Spacer Glue
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+ glue
+ move_after:SearchField
+ SHOW_RESTORE_MENU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project b/car/GYK/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project
new file mode 100644
index 0000000..3c10856
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project
@@ -0,0 +1,11 @@
+
+
+ .org.eclipse.egit.core.cmp
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index
new file mode 100644
index 0000000..c4b6d33
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/1865797976.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2098315546.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2098315546.index
new file mode 100644
index 0000000..e14c9bf
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2098315546.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/212071635.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/212071635.index
new file mode 100644
index 0000000..21f1980
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/212071635.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2148271007.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2148271007.index
new file mode 100644
index 0000000..035fff3
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2148271007.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2215173323.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2215173323.index
new file mode 100644
index 0000000..e883f45
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2215173323.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2406419499.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2406419499.index
new file mode 100644
index 0000000..acdaa62
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2406419499.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2546056188.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2546056188.index
new file mode 100644
index 0000000..035fff3
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2546056188.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2728738893.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2728738893.index
new file mode 100644
index 0000000..21f1980
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2728738893.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2881656414.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2881656414.index
new file mode 100644
index 0000000..71f913e
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2881656414.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2901721207.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2901721207.index
new file mode 100644
index 0000000..5ccf44b
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/2901721207.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3159522249.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3159522249.index
new file mode 100644
index 0000000..356b523
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3159522249.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3360754182.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3360754182.index
new file mode 100644
index 0000000..21f1980
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/3360754182.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/4041666533.index b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/4041666533.index
new file mode 100644
index 0000000..acdaa62
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/4041666533.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache
new file mode 100644
index 0000000..593f470
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache
new file mode 100644
index 0000000..04dc517
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps
new file mode 100644
index 0000000..bc5efad
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt
new file mode 100644
index 0000000..cfc6fb9
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/indexNamesMap.txt
@@ -0,0 +1 @@
+INDEX VERSION 1.131
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
new file mode 100644
index 0000000..8586397
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
@@ -0,0 +1 @@
+java
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache
new file mode 100644
index 0000000..6e8ee67
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/participantsIndexNames.txt b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/participantsIndexNames.txt
new file mode 100644
index 0000000..313c683
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/participantsIndexNames.txt
@@ -0,0 +1,7 @@
+INDEX VERSION 1.131
+D:\web\shiyan6\GYK\.metadata\.plugins\org.eclipse.jst.jsp.core\jspsearch\2828714608.index
+\ReLoBoProject\src\main\java
+D:\web\shiyan6\GYK\.metadata\.plugins\org.eclipse.jst.jsp.core\jspsearch\225493117.index
+\RegisterAndLogin\src\main\java
+D:\web\shiyan6\GYK\.metadata\.plugins\org.eclipse.jst.jsp.core\jspsearch\3725660931.index
+\BookManageProject\src\main\java
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
new file mode 100644
index 0000000..19d2b96
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
@@ -0,0 +1,17 @@
+INDEX VERSION 1.131+D:\web\shiyan6\GYK\.metadata\.plugins\org.eclipse.jdt.core
+4041666533.index
+2406419499.index
+2215173323.index
+1865797976.index
+1774014650.index
+2546056188.index
+3360754182.index
+2148271007.index
+2098315546.index
+2728738893.index
+2901721207.index
+2881656414.index
+3159522249.index
+212071635.index
+2448111054.index
+4083420356.index
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat
new file mode 100644
index 0000000..8dc85a3
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
new file mode 100644
index 0000000..58173cf
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
new file mode 100644
index 0000000..88f0399
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
new file mode 100644
index 0000000..a4ee3cb
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
new file mode 100644
index 0000000..9e390f5
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.j2ee.web/webLibrariesCache.index b/car/GYK/.metadata/.plugins/org.eclipse.jst.j2ee.web/webLibrariesCache.index
new file mode 100644
index 0000000..08d325f
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.j2ee.web/webLibrariesCache.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/225493117.index b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/225493117.index
new file mode 100644
index 0000000..0566fc4
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/225493117.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/2828714608.index b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/2828714608.index
new file mode 100644
index 0000000..285b755
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/2828714608.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/3725660931.index b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/3725660931.index
new file mode 100644
index 0000000..d9fb5ca
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/jspsearch/3725660931.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2098315546.dat b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2098315546.dat
new file mode 100644
index 0000000..9d1a817
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2098315546.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2557318462.dat b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2557318462.dat
new file mode 100644
index 0000000..4e6c192
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2557318462.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2901721207.dat b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2901721207.dat
new file mode 100644
index 0000000..aa027d8
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.jst.jsp.core/taglibindex/2901721207.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.jst.ws.jaxrs.ui/dialog_settings.xml b/car/GYK/.metadata/.plugins/org.eclipse.jst.ws.jaxrs.ui/dialog_settings.xml
new file mode 100644
index 0000000..5ca0b77
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.jst.ws.jaxrs.ui/dialog_settings.xml
@@ -0,0 +1,3 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/car/GYK/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser
new file mode 100644
index 0000000..e1d1a02
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
new file mode 100644
index 0000000..99d0650
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
@@ -0,0 +1 @@
+2024-12-29 11:17:03,540 [Worker-5: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml b/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml
new file mode 100644
index 0000000..4512556
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.16.3.20211002-1029.xml
@@ -0,0 +1,41 @@
+
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+ OFF
+
+
+
+
+ ${org.eclipse.m2e.log.dir}/0.log
+
+ ${org.eclipse.m2e.log.dir}/%i.log
+ 1
+ 10
+
+
+ 100MB
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+
+
+
+ WARN
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/car/GYK/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
new file mode 100644
index 0000000..1f73e14
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
@@ -0,0 +1,6 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties b/car/GYK/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties
new file mode 100644
index 0000000..ac9aa2e
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.pde.core/.cache/clean-cache.properties
@@ -0,0 +1,2 @@
+#Cached timestamps
+#Sun Dec 29 11:21:46 CST 2024
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml b/car/GYK/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml
new file mode 100644
index 0000000..5ca0b77
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml
@@ -0,0 +1,3 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/car/GYK/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml
new file mode 100644
index 0000000..e0019b1
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml
@@ -0,0 +1,14 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.ui.intro/introstate b/car/GYK/.metadata/.plugins/org.eclipse.ui.intro/introstate
new file mode 100644
index 0000000..02f134f
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.ui.intro/introstate
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml
new file mode 100644
index 0000000..5ca0b77
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml
@@ -0,0 +1,3 @@
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
new file mode 100644
index 0000000..a6893ac
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml b/car/GYK/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml
new file mode 100644
index 0000000..6574033
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.internet.cache/cache.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps
new file mode 100644
index 0000000..78d15a4
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/externalLibsTimeStamps differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/1149519838.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/1149519838.index
new file mode 100644
index 0000000..69a538b
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/1149519838.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/160760285.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/160760285.index
new file mode 100644
index 0000000..fd91b2e
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/160760285.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2098315546.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2098315546.index
new file mode 100644
index 0000000..620173a
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2098315546.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2901721207.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2901721207.index
new file mode 100644
index 0000000..620173a
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/2901721207.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/3159522249.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/3159522249.index
new file mode 100644
index 0000000..620173a
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/3159522249.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/40153392.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/40153392.index
new file mode 100644
index 0000000..61f9e99
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/40153392.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/56030793.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/56030793.index
new file mode 100644
index 0000000..f712165
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/56030793.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/789110648.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/789110648.index
new file mode 100644
index 0000000..31021f8
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/789110648.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/savedIndexNames.txt b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/savedIndexNames.txt
new file mode 100644
index 0000000..ac714ee
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/indexes/savedIndexNames.txt
@@ -0,0 +1,4 @@
+INDEX VERSION 1.4+D:\web\shiyan6\GYK\.metadata\.plugins\org.eclipse.wst.jsdt.core\indexes
+3159522249.index
+2098315546.index
+2901721207.index
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js
new file mode 100644
index 0000000..5dba6ab
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/baseBrowserLibrary.js
@@ -0,0 +1,5393 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2013 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+
+/**
+ * Object DOMException()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Object
+ */
+function DOMException(){};
+DOMException.prototype = new Object();
+/**
+ * Constant DOMException.INDEX_SIZE_ERR=1
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INDEX_SIZE_ERR=1;
+/**
+ * Constant DOMException.DOMSTRING_SIZE_ERR=2
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.DOMSTRING_SIZE_ERR=2;
+/**
+ * Constant DOMException.HIERARCHY_REQUEST_ERR=3
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.HIERARCHY_REQUEST_ERR=3;
+/**
+ * Constant DOMException.WRONG_DOCUMENT_ERR=4
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.WRONG_DOCUMENT_ERR=4;
+/**
+ * Constant DOMException.INVALID_CHARACTER_ERR=5
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INVALID_CHARACTER_ERR=5;
+/**
+ * Constant DOMException.NO_DATA_ALLOWED_ER=6
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.NO_DATA_ALLOWED_ER=6;
+/**
+ * Constant DOMException.NO_MODIFICATION_ALLOWED_ERR=7
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.NO_MODIFICATION_ALLOWED_ERR=7;
+/**
+ * Constant DOMException.NOT_FOUND_ERR=8
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.NOT_FOUND_ERR=8;
+/**
+ * Constant DOMException.NOT_SUPPORTED_ERR=9
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.NOT_SUPPORTED_ERR=9;
+/**
+ * Constant DOMException.INUSE_ATTRIBUTE_ERR=10
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INUSE_ATTRIBUTE_ERR=10;
+/**
+ * Constant DOMException.INVALID_STATE_ERR=11
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INVALID_STATE_ERR=11;
+/**
+ * Constant DOMException.SYNTAX_ERR=12
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.SYNTAX_ERR=12;
+/**
+ * Constant DOMException.INVALID_MODIFICATION_ER=13
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INVALID_MODIFICATION_ER=13;
+/**
+ * Constant DOMException.NAMESPACE_ERR=14
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.NAMESPACE_ERR=14;
+/**
+ * Constant DOMException.NVALID_ACCESS_ERR=15
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.INVALID_ACCESS_ERR=15;
+/**
+ * Property code
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMException.prototype.code=0;
+
+/**
+ * Object DOMImplementation()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Object
+ */
+function DOMImplementation(){};
+DOMImplementation.prototype = new Object();
+/**
+ * function hasFeature(feature, version)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} feature
+ * @param {String} version
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DOMImplementation.prototype.hasFeature = function(feature, version){return false;};
+/**
+ * function createDocumentType(qualifiedName, publicId, systemId)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} qualifiedName
+ * @param {String} publicId
+ * @param {String} systemId
+ * @returns {DocumentType}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see DocumentType
+ */
+DOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId){return new DocumentType();};
+/**
+ * function createDocument(namespaceURI, qualifiedName, doctype)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} qualifiedName
+ * @param {DocumentType} doctype
+ * @returns {Document}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Document
+ */
+DOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype){return new HTMLDocument();};
+
+/**
+ * Object DocumentFragment()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function DocumentFragment(){};
+DocumentFragment.prototype=new Node();
+
+/**
+ * Object Document()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function Document(){};
+Document.prototype = new Node();
+/**
+ * Property defaultView
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Window
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Window
+ */
+Document.prototype.defaultView = new Window();
+/**
+ * Property doctype
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type DocumentType
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see DocumentType
+ */
+Document.prototype.doctype = new DocumentType();
+/**
+ * Property implementation
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type DOMImplementation
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see DOMImplementation
+ */
+Document.prototype.implementation = new DOMImplementation();
+/**
+ * Property documentElement
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Element
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Document.prototype.documentElement= new HTMLElement();
+/**
+ * Property styleSheets
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Document.prototype.styleSheets= new Array();
+/**
+ * function createElement(tagName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} tagName
+ * @returns {Element}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Document.prototype.createElement=function(tagName){return new HTMLElement();};
+/**
+ * function createDocumentFragment()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @returns {DocumentFragment}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see DocumentFragment
+ */
+Document.prototype.createDocumentFragment=function(){return new DocumentFragment();};
+/**
+ * function createTextNode(data)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} data
+ * @returns {Text}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Text
+ */
+Document.prototype.createTextNode=function(data){return new Text();};
+/**
+ * function createComment(data)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} data
+ * @returns {Comment}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Comment
+ */
+Document.prototype.createComment=function(data){return new Comment();};
+/**
+ * function createCDATASection(data)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} data
+ * @returns {CDATASection}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see CDATASection
+ */
+Document.prototype.createCDATASection=function(data){};
+/**
+ * function createProcessingInstruction(target, data)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type ProcessingInstruction
+ * @param {String} target
+ * @param {String} data
+ * @returns {ProcessingInstruction}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see ProcessingInstruction
+*/
+Document.prototype.createProcessingInstruction=function(target, data){return new ProcessingInstruction();};
+/**
+ * function createAttribute(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {Attr}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Attr
+ */
+Document.prototype.createAttribute=function(name){return new Attr();};
+/**
+ * function createEntityReference(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {EntityReference}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see EntityReference
+ */
+Document.prototype.createEntityReference=function(name){return new EntityReference();};
+/**
+ * function getElementsByTagName(tagname)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} tagname
+ * @returns {NodeList}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see NodeList
+ */
+Document.prototype.getElementsByTagName=function(tagname){return new NodeList();};
+/**
+ * function importNode(importedNode, deep)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} importedNode
+ * @param {Boolean} deep
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Document.prototype.importNode=function(importedNode, deep){return new Node();};
+/**
+ * function createElementNS(namespaceURI, qualifiedName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} qualifiedName
+ * @returns {Element}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Document.prototype.createElementNS=function(namespaceURI, qualifiedName){return new HTMLElement();};
+/**
+ * function createEvent(String eventType)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} eventType
+ * @returns {Object}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Document.prototype.createEvent=function(eventType){return new Object();};
+/**
+ * function createAttributeNS(namespaceURI, qualifiedName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} qualifiedName
+ * @returns {Attr}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Attr
+ */
+Document.prototype.createAttributeNS=function(namespaceURI, qualifiedName){return new Attr();};
+/**
+ * function getElementsByTagNameNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {NodeList}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see NodeList
+ */
+Document.prototype.getElementsByTagNameNS=function(namespaceURI, localName){return new NodeList();};
+/**
+ * function getElementById(elementId)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} elementId
+ * @returns {Element}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Document.prototype.getElementById=function(elementId){return new HTMLElement();};
+
+/**
+ * Object Node()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @memberOf Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see EventTarget
+ */
+function Node(){};
+Node.prototype=new EventTarget();
+/**
+ * Constant Node.ELEMENT_NODE=1
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.ELEMENT_NODE=1;
+/**
+ * Constant Node.ATTRIBUTE_NODE=2
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.ATTRIBUTE_NODE=2;
+/**
+ * Constant Node.TEXT_NODE=3
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.TEXT_NODE=3;
+/**
+ * Constant Node.CDATA_SECTION_NODE=4
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.CDATA_SECTION_NODE=4;
+/**
+ * Constant Node.ENTITY_REFERENCE_NODE=5
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.ENTITY_REFERENCE_NODE=5;
+/**
+ * Constant Node.ENTITY_NODE=6
+ * @type Number
+ * @memberOf Node
+ * @see Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+
+ * @see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+*/
+Node.ENTITY_NODE=6;
+/**
+ * Constant Node.PROCESSING_INSTRUCTION_NODE=7
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.PROCESSING_INSTRUCTION_NODE=7;
+/**
+ * Constant Node.COMMENT_NODE=8
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.COMMENT_NODE=8;
+/**
+ * Constant Node.DOCUMENT_NODE=9
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.DOCUMENT_NODE=9;
+/**
+ * Constant Node.DOCUMENT_TYPE_NODE=10
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.DOCUMENT_TYPE_NODE=10;
+/**
+ * Constant Node.DOCUMENT_FRAGMENT_NODE=11
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.DOCUMENT_FRAGMENT_NODE=11;
+/**
+ * Constant Node.NOTATION_NODE=12
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @constant
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.NOTATION_NODE=12;
+/**
+ * Property nodeName
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.nodeName = "";
+/**
+ * Property nodeValue
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.nodeValue = "";
+/**
+ * Property nodeType
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.nodeType = 0;
+/**
+ * Property parentNode
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.parentNode=new Node();
+/**
+ * Property childNodes
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type NodeList
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see NodeList
+*/
+Node.prototype.childNodes=new NodeList();
+/**
+ * Property firstChild
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.firstChild=new Node();
+/**
+ * Property lastChild
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.lastChild=new Node();
+/**
+ * Property previousSibling
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.previousSibling=new Node();
+/**
+ * Property nextSibling
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Node
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.nextSibling=new Node();
+/**
+ * Property attributes
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type NamedNodeMap
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see NamedNodeMap
+ */
+Node.prototype.attributes=new NamedNodeMap();
+/**
+ * Property ownerDocument
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Document
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Document
+ */
+Node.prototype.ownerDocument = new HTMLDocument();
+/**
+ * Property namespaceURI
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.namespaceURI="";
+/**
+ * Property prefix
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.prefix = "";
+/**
+ * Property localName
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.localName= "";
+/**
+ * function insertBefore(newChild, refChild)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} newChild
+ * @param {Node} refChild
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.insertBefore = function(newChild, refChild){return new Node();};
+/**
+ * function replaceChild(newChild, oldChild)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} newChild
+ * @param {Node} oldChild
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.replaceChild = function(newChild, oldChild){return new Node();};
+/**
+ * function removeChild(oldChild)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} oldChild
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.removeChild = function(oldChild){return new Node();};
+/**
+ * function appendChild(newChild)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} newChild
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.appendChild = function(newChild){return new Node();};
+/**
+ * function hasChildNodes()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.hasChildNodes=function(){return false;};
+/**
+ * function cloneNode(deep)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Boolean} deep
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+Node.prototype.cloneNode=function(deep){return new Node();};
+/**
+ * function normalize()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.normalize = function(){};
+/**
+ * function isSupported(feature, version)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} feature
+ * @param {String} version
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.isSupported=function(feature, version){return false;};
+/**
+ * function hasAttributes()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Node.prototype.hasAttributes=function(){return false;};
+
+/**
+ * Object NodeList()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Object
+ */
+function NodeList(){};
+NodeList.prototype = new Object();
+/**
+ * Property length
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+NodeList.prototype.length=0;
+/**
+ * function item(index)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ * Note: This object can also be dereferenced using square bracket notation (e.g. obj[1]). Dereferencing with an integer index is equivalent to invoking the item method with that index
+ *
+ * @param {Number} index
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+*/
+NodeList.prototype.item = function(index){return new Node();};
+
+/**
+ * Object NamedNodeMap()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Object
+ */
+function NamedNodeMap(){};
+NamedNodeMap.prototype = new Object();
+/**
+ * Property length
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+NamedNodeMap.prototype.length=0;
+/**
+ * function getNamedItem(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.getNamedItem=function(name){return new Node();};
+/**
+ * function setNamedItem(arg)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} arg
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.setNamedItem=function(arg){return new Node();};
+/**
+ * function removeNamedItem(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.removeNamedItem=function(name){return new Node();};
+/**
+ * function item(index)
+ * Note: This object can also be dereferenced using square bracket notation (e.g. obj[1]). Dereferencing with an integer index is equivalent to invoking the item method with that index.
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} index
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.item=function(index){return new Node();};
+/**
+ * function getNamedItemNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.getNamedItemNS=function(namespaceURI, localName){return new Node();};
+/**
+ * function setNamedItemNS(arg)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Node} arg
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.setNamedItemNS=function(arg){return new Node();};
+/**
+ * function removeNamedItemNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {Node}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+NamedNodeMap.prototype.removeNamedItemNS=function(namespaceURI, localName){return new Node();};
+
+/**
+ * Object CharacterData()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function CharacterData(){};
+CharacterData.prototype=new Node();
+/**
+ * Property data
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.data="";
+/**
+ * Property length
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.length=0;
+/**
+ * function substringData(offset, count)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} offset
+ * @param {Number} count
+ * @returns {String}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.substringData=function(offset, count){return "";};
+/**
+ * function appendData(arg)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} arg
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.appendData=function(arg){};
+/**
+ * function insertData(offset, arg)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} offset
+ * @param {String} arg
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.insertData=function(offset, arg){};
+/**
+ * function deleteData(offset, count)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} offset
+ * @param {Number} count
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.deleteData=function(offset, count){};
+/**
+ * function replaceData(offset, count, arg)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} offset
+ * @param {Number} count
+ * @param {String} arg
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+CharacterData.prototype.replaceData=function(offset, count, arg){};
+
+/**
+ * Object Attr()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function Attr(){};
+Attr.prototype = new Node();
+/**
+ * Property name
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Attr.prototype.name = "";
+/**
+ * Property specified
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Attr.prototype.specified = false;
+/**
+ * Property value
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Attr.prototype.value = "";
+/**
+ * Property ownerElement
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type Element
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Element
+ */
+Attr.prototype.ownerElement = new Element();
+
+/**
+ * Object Element()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function Element(){};
+Element.prototype=new Node();
+/**
+ * Property tagName
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.tagName="";
+/**
+ * function addEventListener(Stirng type, Function listener, Boolean useCapture)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} type
+ * @param {Function} listener
+ * @param {Boolean} useCapture
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.addEventListener=function(type, listener, useCapture){};
+/**
+ * function attachEvent(String type, Function listener)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} type
+ * @param {Function} listener
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.attachEvent=function(type, listener){};
+/**
+ * function detachEvent(String type, Function listener)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} type
+ * @param {Function} listener
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.detachEvent=function(type, listener){};
+/**
+ * function dispatchEvent(Object event)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Object} event
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.dispatchEvent=function(event){return false;};
+/**
+ * function getAttribute(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getAttribute=function(name){return "";};
+/**
+ * function setAttribute(name, value)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @param {String} value
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.setAttribute=function(name, value){};
+/**
+ * function removeAttribute(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.removeAttribute=function(name){};
+/**
+ * function getAttributeNode(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {Attr}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getAttributeNode=function(name){return new Attr();};
+/**
+ * function setAttributeNode(newAttr)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Attr} newAttr
+ * @returns {Attr}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.setAttributeNode=function(newAttr){return new Attr();};
+/**
+ * function removeAttributeNode(oldAttr)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Attr} oldAttr
+ * @returns {Attr}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.removeAttributeNode=function(oldAttr){return new Attr();};
+/**
+ * function getElementsByTagName(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {NodeList}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getElementsByTagName=function(name){return new NodeList();};
+/**
+ * function getAttributeNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {String}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getAttributeNS=function(namespaceURI, localName){return "";};
+/**
+ * function setAttributeNS(namespaceURI, qualifiedName, value)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} qualifiedName
+ * @param {String} value
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.setAttributeNS=function(namespaceURI, qualifiedName, value){};
+/**
+ * function removeAttributeNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.removeAttributeNS=function(namespaceURI, localName){};
+/**
+ * function getAttributeNodeNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {Attr}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getAttributeNodeNS=function(namespaceURI, localName){return new Attr();};
+/**
+ * function setAttributeNodeNS(newAttr)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Attr} newAttr
+ * @returns {Attr}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.setAttributeNodeNS=function(newAttr){return new Attr();};
+/**
+ * function getElementsByTagNameNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {NodeList}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.getElementsByTagNameNS=function(namespaceURI, localName){return new NodeList();};
+/**
+ * function hasAttribute(name)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} name
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.hasAttribute=function(name){return false;};
+/**
+ * function hasAttributeNS(namespaceURI, localName)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {String} namespaceURI
+ * @param {String} localName
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Element.prototype.hasAttributeNS=function(namespaceURI, localName){return false;};
+
+/**
+ * Object Text()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments CharacterData
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see CharacterData
+ */
+function Text(){};
+Text.prototype = new CharacterData();
+/**
+ * function splitText(offset)
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @param {Number} offset
+ * @returns {Text}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Text
+ */
+Text.prototype.splitText = function(offset) {return new Text();};
+
+/**
+ * Object Comment()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments CharacterData
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see CharacterData
+ */
+function Comment(){};
+Comment.prototype = new CharacterData();
+
+/**
+ * Object CDATASection()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Text
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Text
+ */
+function CDATASection(){};
+CDATASection.prototype = new Text();
+
+/**
+ * Object DocumentType()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function DocumentType(){};
+DocumentType.prototype = new Node();
+/**
+ * Property name
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.name="";
+/**
+ * Property entities
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type NamedNodeMap
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.entities = new NamedNodeMap();
+/**
+ * Property notations
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type NamedNodeMap
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.notations=new NamedNodeMap();
+/**
+ * Property publicId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.publicId="";
+/**
+ * Property systemId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.systemId="";
+/**
+ * Property internalSubset
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+DocumentType.prototype.internalSubset="";
+
+/**
+ * Object Notation()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function Notation(){};
+Notation.prototype=new Node();
+/**
+ * Property publicId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Notation.prototype.publicId="";
+/**
+ * Property systemId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Notation.prototype.systemId="";
+
+/**
+ * Object Entity()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function Entity(){};
+Entity.prototype=new Node();
+/**
+ * Property publicId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Entity.prototype.publicId="";
+/**
+ * Property systemId
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Entity.prototype.systemId="";
+/**
+ * Property notationName
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Entity.prototype.notationName="";
+
+/**
+ * Object EntityReference()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function EntityReference(){};
+EntityReference.prototype=new Node();
+
+/**
+ * Object ProcessingInstruction()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @augments Node
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ * @see Node
+ */
+function ProcessingInstruction(){};
+ProcessingInstruction.prototype=new Node();
+/**
+ * Property target
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+ProcessingInstruction.prototype.target="";
+/**
+ * Property target
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+ProcessingInstruction.prototype.data="";
+
+
+/*HTML DOM Below this line*/
+
+/**
+ * Object HTMLCollection()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+function HTMLCollection(){};
+HTMLCollection.prototype = new Object();
+/**
+ * Property length
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLCollection.prototype.length=0;
+/**
+ * function item(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLCollection.prototype.item = function(index){return new Node();};
+/**
+ * function namedItem(name)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {String} name
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLCollection.prototype.namedItem = function(index){return new Node();};
+
+/**
+ * Object HTMLOptionsCollection()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+function HTMLOptionsCollection(){};
+HTMLOptionsCollection.prototype = new Object();
+/**
+ * Property length
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionsCollection.prototype.length=0;
+/**
+ * function item(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionsCollection.prototype.item = function(index){return new Node();};
+/**
+ * function namedItem(name)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {String} name
+ * @returns {Node}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionsCollection.prototype.namedItem = function(index){return new Node();};
+
+/**
+ * Object HTMLDocument()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments Document
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see Document
+ */
+function HTMLDocument(){};
+HTMLDocument.prototype = new Document();
+/**
+ * Property title
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.title="";
+/**
+ * Property referrer
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.referrer="";
+/**
+ * Property domain
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.domain="";
+/**
+ * Property URL
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.URL="";
+/**
+ * Property body
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.body=new HTMLElement();
+/**
+ * Property images
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.images=new HTMLCollection();
+/**
+ * Property applets
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.applets=new HTMLCollection();
+/**
+ * Property links
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.links=new HTMLCollection();
+/**
+ * Property forms
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.forms=new HTMLCollection();
+/**
+ * Property anchors
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.anchors=new HTMLCollection();
+/**
+ * Property cookie
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.cookie="";
+/**
+ * Property lastModified
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.lastModified="";
+/**
+ * function open()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.open = function(){};
+/**
+ * function close()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.close = function(){};
+/**
+ * function write(text)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {String} text
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.write = function(text){};
+/**
+ * function writeln(text)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {String} text
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.writeln = function(text){};
+/**
+ * function getElementsByName(elementName)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {String} elementName
+ * @returns {NodeList}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDocument.prototype.getElementsByName = function(elementName){return new NodeList();};
+
+/**
+ * Object HTMLElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments Element
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see Element
+ */
+function HTMLElement(){};
+HTMLElement.prototype = new Element();
+/**
+ * Property id
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLElement.prototype.id="";
+/**
+ * Property title
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLElement.prototype.title="";
+/**
+ * Property lang
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLElement.prototype.lang="";
+/**
+ * Property dir
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLElement.prototype.dir="";
+/**
+ * Property className
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLElement.prototype.className="";
+/**
+ * Property innerHTML
+ *
+ * @type String
+ */
+HTMLElement.prototype.innerHTML="";
+/**
+ * Property offsetHeight
+ *
+ * @type Number
+ */
+HTMLElement.prototype.offsetHeight=0;
+/**
+ * Property offsetWidth
+ *
+ * @type Number
+ */
+HTMLElement.prototype.offsetWidth=0;
+/**
+ * Property offsetLeft
+ *
+ * @type Number
+ */
+HTMLElement.prototype.offsetLeft=0;
+/**
+ * Property offsetTop
+ *
+ * @type Number
+ */
+HTMLElement.prototype.offsetTop=0;
+/**
+ * Property offsetParent
+ *
+ * @type HTMLElement
+ */
+HTMLElement.prototype.offsetParent = new HTMLElement();
+/**
+ * Property scrollHeight
+ *
+ * @type Number
+ */
+HTMLElement.prototype.scrollHeight=0;
+/**
+ * Property scrollWidth
+ *
+ * @type Number
+ */
+HTMLElement.prototype.scrollWidth=0;
+/**
+ * Property scrollLeft
+ *
+ * @type Number
+ */
+HTMLElement.prototype.scrollLeft=0;
+/**
+ * Property scrollTop
+ *
+ * @type Number
+ */
+HTMLElement.prototype.scrollTop=0;
+/**
+ * Property style
+ *
+ * @type CSS2Properties
+ */
+HTMLElement.prototype.style = new CSS2Properties();
+
+/**
+ * Object HTMLHtmlElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLHtmlElement(){};
+HTMLHtmlElement.prototype = new HTMLElement();
+/**
+ * Property version
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHtmlElement.prototype.version="";
+
+/**
+ * Object HTMLHeadElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLHeadElement(){};
+HTMLHeadElement.prototype = new HTMLElement();
+/**
+ * Property profile
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHeadElement.prototype.profile="";
+
+/**
+ * Object HTMLLinkElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLLinkElement(){};
+HTMLLinkElement.prototype = new HTMLElement();
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.disabled=false;
+/**
+ * Property charset
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.charset="";
+/**
+ * Property href
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.href="";
+/**
+ * Property hreflang
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.hreflang="";
+/**
+ * Property media
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.media="";
+/**
+ * Property rel
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.rel="";
+/**
+ * Property rev
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.rev="";
+/**
+ * Property target
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.target="";
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLinkElement.prototype.type="";
+
+/**
+ * Object HTMLTitleElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTitleElement(){};
+HTMLTitleElement.prototype = new HTMLElement();
+/**
+ * Property text
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTitleElement.prototype.text="";
+
+/**
+ * Object HTMLMetaElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLMetaElement(){};
+HTMLMetaElement.prototype = new HTMLElement();
+/**
+ * Property content
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMetaElement.prototype.content="";
+/**
+ * Property httpEquiv
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMetaElement.prototype.httpEquiv="";
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMetaElement.prototype.name="";
+/**
+ * Property scheme
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMetaElement.prototype.scheme="";
+
+/**
+ * Object HTMLBaseElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLBaseElement(){};
+HTMLBaseElement.prototype = new HTMLElement();
+/**
+ * Property href
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBaseElement.prototype.href="";
+/**
+ * Property target
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBaseElement.prototype.target="";
+
+/**
+ * Object HTMLIsIndexElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLIsIndexElement(){};
+HTMLIsIndexElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIsIndexElement.prototype.form=new HTMLFormElement();
+/**
+ * Property prompt
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIsIndexElement.prototype.prompt="";
+
+/**
+ * Object HTMLStyleElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLStyleElement(){};
+HTMLStyleElement.prototype = new HTMLElement();
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLStyleElement.prototype.disabled=false;
+/**
+ * Property media
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLStyleElement.prototype.media="";
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLStyleElement.prototype.type="";
+
+/**
+ * Object HTMLBodyElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLBodyElement(){};
+HTMLBodyElement.prototype = new HTMLElement();
+/**
+ * Property aLink
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.aLink="";
+/**
+ * Property background
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.background="";
+/**
+ * Property bgColor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.bgColor="";
+/**
+ * Property link
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.link="";
+/**
+ * Property text
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.text="";
+/**
+ * Property vLink
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBodyElement.prototype.vLink="";
+
+/**
+ * Object HTMLFormElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLFormElement(){};
+HTMLFormElement.prototype = new HTMLElement();
+/**
+ * Property elements
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.elements=new HTMLCollection();
+/**
+ * Property length
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.length=0;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.name="";
+/**
+ * Property acceptCharset
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.acceptCharset="";
+/**
+ * Property action
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.action="";
+/**
+ * Property enctype
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.enctype="";
+/**
+ * Property method
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.method="";
+/**
+ * Property target
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.target="";
+/**
+ * function submit()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.submit = function(){};
+/**
+ * function reset()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFormElement.prototype.reset = function(){};
+
+/**
+ * Object HTMLSelectElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLSelectElement(){};
+HTMLSelectElement.prototype = new HTMLElement();
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.type="";
+/**
+ * Property selectedIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.selectedIndex=0;
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.value="";
+/**
+ * Property length
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.length=0;
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.form = new HTMLFormElement();
+/**
+ * Property options
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLOptionsCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.options= new HTMLOptionsCollection();
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.disabled=false;
+/**
+ * Property multiple
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.multiple=false;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.name="";
+/**
+ * Property size
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.size=0;
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.tabIndex=0;
+/**
+ * function add(element, before)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {HTMLElement} element
+ * @param {HTMLElement} before
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.add = function(element, before){};
+/**
+ * function remove(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.remove = function(index){};
+/**
+ * function blur()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.blur = function(){};
+/**
+ * function focus()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLSelectElement.prototype.focus = function(){};
+
+/**
+ * Object HTMLOptGroupElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLOptGroupElement(){};
+HTMLOptGroupElement.prototype = new HTMLElement();
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptGroupElement.prototype.disabled=false;
+/**
+ * Property label
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptGroupElement.prototype.label="";
+
+/**
+ * Object Option()
+ * @constructor
+ * @param {String} text
+ * @param {String} value
+ * @param {Boolean} defaultSelected
+ * @param {Boolean} selected
+ */
+function Option(text, value, defaultSelected, selected){};
+Option.prototype = new HTMLOptionElement();
+/**
+ * Object HTMLOptionElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLOptionElement(){};
+HTMLOptionElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.form = new HTMLFormElement();
+/**
+ * Property defaultSelected
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.defaultSelected=false;
+/**
+ * Property text
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.text="";
+/**
+ * Property index
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.index=0;
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.disabled=false;
+/**
+ * Property label
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.label="";
+/**
+ * Property selected
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.selected=false;
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOptionElement.prototype.value="";
+
+/**
+ * Object HTMLInputElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLInputElement(){};
+HTMLInputElement.prototype = new HTMLElement();
+/**
+ * Property defaultValue
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.defaultValue="";
+/**
+ * Property defaultChecked
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.defaultChecked=false;
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.form = new HTMLFormElement();
+/**
+ * Property accept
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.accept="";
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.accessKey="";
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.align="";
+/**
+ * Property alt
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.alt="";
+/**
+ * Property checked
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.checked=false;
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.disabled=false;
+/**
+ * Property masLength
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.maxLenght=0;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.name="";
+/**
+ * Property readOnly
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.readOnly=false;
+/**
+ * Property size
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.size=0;
+/**
+ * Property src
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.src="";
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.tabIndex=0;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.type="";
+/**
+ * Property useMap
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.useMap="";
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.value="";
+/**
+ * function blur()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.blur = function(){};
+/**
+ * function focus()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.focus = function(){};
+/**
+ * function select()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.select = function(){};
+/**
+ * function click()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLInputElement.prototype.click = function(){};
+
+/**
+ * Object HTMLTextAreaElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTextAreaElement(){};
+HTMLTextAreaElement.prototype = new HTMLElement();
+/**
+ * Property defaultValue
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.defaultValue="";
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.form= new HTMLFormElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.accessKey="";
+/**
+ * Property cols
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.cols=0;
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.disabled=false;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.name="";
+/**
+ * Property readOnly
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.readOnly=false;
+/**
+ * Property rows
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.rows=0;
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.tabIndex=0;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.type="";
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.value="";
+/**
+ * function blur()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.blur = function(){};
+/**
+ * function focus()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.focus = function(){};
+/**
+ * function select()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTextAreaElement.prototype.select = function(){};
+
+/**
+ * Object HTMLButtonElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLButtonElement(){};
+HTMLButtonElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.form = new HTMLFormElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.accessKey = "";
+/**
+ * Property disabled
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.disabled=false;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.name="";
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.tabIndex=0;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.type="";
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLButtonElement.prototype.value="";
+
+/**
+ * Object HTMLLabelElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLLabelElement(){};
+HTMLLabelElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLabelElement.prototype.form = new HTMLFormElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLabelElement.prototype.accessKey="";
+/**
+ * Property htmlFor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLabelElement.prototype.htmlFor="";
+
+/**
+ * Object HTMLFieldSetElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLFieldSetElement(){};
+HTMLFieldSetElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFieldSetElement.prototype.form = new HTMLFormElement();
+
+/**
+ * Object HTMLLegendElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLLegendElement(){};
+HTMLLegendElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLegendElement.prototype.form = new HTMLFormElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLegendElement.prototype.accessKey="";
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLegendElement.prototype.align="";
+
+/**
+ * Object HTMLUListElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLUListElement(){};
+HTMLUListElement.prototype = new HTMLElement();
+/**
+ * Property compact
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLUListElement.prototype.compact=false;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLUListElement.prototype.type="";
+
+/**
+ * Object HTMLOListElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLOListElement(){};
+HTMLOListElement.prototype = new HTMLElement();
+/**
+ * Property compact
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOListElement.prototype.compact=false;
+/**
+ * Property start
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOListElement.prototype.start=0;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLOListElement.prototype.type="";
+
+/**
+ * Object HTMLDListElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLDListElement(){};
+HTMLDListElement.prototype = new HTMLElement();
+/**
+ * Property compact
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDListElement.prototype.compact=false;
+
+/**
+ * Object HTMLDirectoryElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLDirectoryElement(){};
+HTMLDirectoryElement.prototype = new HTMLElement();
+/**
+ * Property compact
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDirectoryElement.prototype.compact=false;
+
+/**
+ * Object HTMLMenuElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLMenuElement(){};
+HTMLMenuElement.prototype = new HTMLElement();
+/**
+ * Property compact
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMenuElement.prototype.compact=false;
+
+/**
+ * Object HTMLLIElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLLIElement(){};
+HTMLLIElement.prototype = new HTMLElement();
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLIElement.prototype.type="";
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLLIElement.prototype.value=0;
+
+/**
+ * Object HTMLDivElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLDivElement(){};
+HTMLDivElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLDivElement.prototype.align="";
+
+/**
+ * Object HTMLParagraphElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLParagraphElement(){};
+HTMLParagraphElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLParagraphElement.prototype.align="";
+
+/**
+ * Object HTMLHeadingElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLHeadingElement(){};
+HTMLHeadingElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHeadingElement.prototype.align="";
+
+/**
+ * Object HTMLQuoteElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLQuoteElement(){};
+HTMLQuoteElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLQuoteElement.prototype.align="";
+
+/**
+ * Object HTMLPreElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLPreElement(){};
+HTMLPreElement.prototype = new HTMLElement();
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLPreElement.prototype.width=0;
+
+/**
+ * Object HTMLBRElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLBRElement(){};
+HTMLBRElement.prototype = new HTMLElement();
+/**
+ * Property clear
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBRElement.prototype.clear="";
+
+/**
+ * Object HTMLBaseFontElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLBaseFontElement(){};
+HTMLBaseFontElement.prototype = new HTMLElement();
+/**
+ * Property color
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBaseFontElement.prototype.color="";
+/**
+ * Property face
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBaseFontElement.prototype.face="";
+/**
+ * Property size
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLBaseFontElement.prototype.size=0;
+
+/**
+ * Object HTMLBaseFontElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLFontElement(){};
+HTMLFontElement.prototype = new HTMLElement();
+/**
+ * Property color
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFontElement.prototype.color="";
+/**
+ * Property face
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFontElement.prototype.face="";
+/**
+ * Property size
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFontElement.prototype.size=0;
+
+/**
+ * Object HTMLHRElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLHRElement(){};
+HTMLHRElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHRElement.prototype.align="";
+/**
+ * Property noShade
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHRElement.prototype.noShade=false;
+/**
+ * Property size
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHRElement.prototype.size="";
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLHRElement.prototype.width="";
+
+/**
+ * Object HTMLModElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLModElement(){};
+HTMLModElement.prototype = new HTMLElement();
+/**
+ * Property cite
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLModElement.prototype.cite="";
+/**
+ * Property dateTime
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLModElement.prototype.dateTime="";
+
+/**
+ * Object HTMLAnchorElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLAnchorElement(){};
+HTMLAnchorElement.prototype = new HTMLElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.accessKey="";
+/**
+ * Property charset
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.charset="";
+/**
+ * Property coords
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.coords="";
+/**
+ * Property href
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.href="";
+/**
+ * Property hreflang
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.hreflang="";
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.name="";
+/**
+ * Property rel
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.rel="";
+/**
+ * Property rev
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.rev="";
+/**
+ * Property shape
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.shape="";
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.tabIndex=0;
+/**
+ * Property target
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.target="";
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.type="";
+/**
+ * function blur()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.blur = function(){};
+/**
+ * function focus()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAnchorElement.prototype.focus = function(){};
+
+/**
+ * Object Image()
+ * @constructor
+ * @param {Number} width
+ * @param {Number} height
+ */
+function Image(width, height){};
+Image.prototype = new HTMLImageElement();
+/**
+ * Object HTMLImageElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLImageElement(){};
+HTMLImageElement.prototype = new HTMLElement();
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.name="";
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.align="";
+/**
+ * Property alt
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.alt="";
+/**
+ * Property border
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.border="";
+/**
+ * Property height
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.height=0;
+/**
+ * Property hspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.hspace=0;
+/**
+ * Property isMap
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.isMap=false;
+/**
+ * Property longDesc
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.longDesc="";
+/**
+ * Property src
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.src="";
+/**
+ * Property useMap
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.useMap="";
+/**
+ * Property vspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.vspace=0;
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLImageElement.prototype.width=0;
+
+/**
+ * Object HTMLObjectElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLObjectElement(){};
+HTMLObjectElement.prototype = new HTMLElement();
+/**
+ * Property form
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLFormElement
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.form = new HTMLFormElement();
+/**
+ * Property code
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.code="";
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.align="";
+/**
+ * Property archive
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.archive="";
+/**
+ * Property border
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.border="";
+/**
+ * Property codeBase
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.codeBase="";
+/**
+ * Property codeType
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.codeType="";
+/**
+ * Property data
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.data="";
+/**
+ * Property declare
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.declare=false;
+/**
+ * Property height
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.height="";
+/**
+ * Property hspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.hspace=0;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.name="";
+/**
+ * Property standby
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.standby="";
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.tabIndex=0;
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.type="";
+/**
+ * Property useMap
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.useMap="";
+/**
+ * Property vspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.vspace=0;
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.width="";
+/**
+ * Property contentDocument
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Document
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLObjectElement.prototype.contentDocument= new HTMLDocument();
+
+/**
+ * Object HTMLParamElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLParamElement(){};
+HTMLParamElement.prototype = new HTMLElement();
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLParamElement.prototype.name="";
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLParamElement.prototype.type="";
+/**
+ * Property value
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLParamElement.prototype.value="";
+/**
+ * Property valueType
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLParamElement.prototype.valueType="";
+
+/**
+ * Object HTMLAppletElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLAppletElement(){};
+HTMLAppletElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.align="";
+/**
+ * Property alt
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.alt="";
+/**
+ * Property archive
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.archive="";
+/**
+ * Property code
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.code="";
+/**
+ * Property codeBase
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.codeBase="";
+/**
+ * Property height
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.hight="";
+/**
+ * Property hspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.hspace=0;
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.name="";
+/**
+ * Property object
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.object="";
+/**
+ * Property vspace
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.vspace=0;
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAppletElement.prototype.width="";
+
+/**
+ * Object HTMLMapElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLMapElement(){};
+HTMLMapElement.prototype = new HTMLElement();
+/**
+ * Property areas
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMapElement.prototype.areas = new HTMLCollection();
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLMapElement.prototype.name="";
+
+/**
+ * Object HTMLAreaElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLAreaElement(){};
+HTMLAreaElement.prototype = new HTMLElement();
+/**
+ * Property accessKey
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.accessKey="";
+/**
+ * Property alt
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.alt="";
+/**
+ * Property coords
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.coords="";
+/**
+ * Property href
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.href="";
+/**
+ * Property noHref
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.noHref=false;
+/**
+ * Property shape
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.shape="";
+/**
+ * Property tabIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.tabIndex=0;
+/**
+ * Property target
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLAreaElement.prototype.target="";
+
+/**
+ * Object HTMLScriptElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLScriptElement(){};
+HTMLScriptElement.prototype = new HTMLElement();
+/**
+ * Property text
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.text="";
+/**
+ * Property htmlFor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.htmlFor="";
+/**
+ * Property event
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.event="";
+/**
+ * Property charset
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.charset="";
+/**
+ * Property defer
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.defer="";
+/**
+ * Property src
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.src="";
+/**
+ * Property type
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLScriptElement.prototype.type="";
+
+/**
+ * Object HTMLTableElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableElement(){};
+HTMLTableElement.prototype = new HTMLElement();
+/**
+ * Property caption
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLTableCaptionElement
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.caption = new HTMLTableCaptionElement();
+/**
+ * Property tHead
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLTableSectionElement
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.tHead = new HTMLTableSelectionElement();
+/**
+ * Property tFoot
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLTableSectionElement
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.tFoot = new HTMLTableSelectionElement();
+/**
+ * Property rows
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.rows = new HTMLCollection();
+/**
+ * Property tBodies
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.tBodies = new HTMLCollection();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.align="";
+/**
+ * Property bgColor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.bgColor="";
+/**
+ * Property border
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.border="";
+/**
+ * Property cellPadding
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.cellPadding="";
+/**
+ * Property cellSpacing
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.cellSpacing="";
+/**
+ * Property frame
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.frame="";
+/**
+ * Property rules
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.rules="";
+/**
+ * Property summary
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.summary="";
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.width="";
+/**
+ * function createTHead();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @returns {HTMLElement}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.createTHead = function(){return new HTMLElement();};
+/**
+ * function deleteTHead();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.deleteTHead = function(){};
+/**
+ * function createTFoot();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @returns {HTMLElement}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.createTFoot = function(){return new HTMLElement();};
+/**
+ * function deleteTFoot();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.deleteTFoot = function(){};
+/**
+ * function createCaption();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @returns {HTMLElement}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.createCaption = function(){return new HTMLElement();};
+/**
+ * function deleteCaption();
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.deleteCaption = function(){};
+/**
+ * function insertRow(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @returns {HTMLElement}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.insertRow = function(index){return new HTMLElement();};
+/**
+ * function deleteRow(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableElement.prototype.deleteRow = function(index){};
+
+/**
+ * Object HTMLTableCaptionElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableCaptionElement(){};
+HTMLTableCaptionElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCaptionElement.prototype.align="";
+
+/**
+ * Object HTMLTableColElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableColElement(){};
+HTMLTableColElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.align="";
+/**
+ * Property ch
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.ch="";
+/**
+ * Property chOff
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.chOff="";
+/**
+ * Property span
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.span=0;
+/**
+ * Property vAlign
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.vAlign="";
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableColElement.prototype.width="";
+
+/**
+ * Object HTMLTableSelectionElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableSelectionElement(){};
+HTMLTableSelectionElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.align="";
+/**
+ * Property ch
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.ch="";
+/**
+ * Property chOff
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.chOff="";
+/**
+ * Property vAlign
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.vAlign="";
+/**
+ * Property rows
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.rows="";
+/**
+ * function insertRow(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @returns {HTMLElement}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.insertRow = function(index){return new HTMLElement();};
+/**
+ * function deleteRow(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableSelectionElement.prototype.deleteRow = function(index){};
+
+/**
+ * Object HTMLTableRowElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableRowElement(){};
+HTMLTableRowElement.prototype = new HTMLElement();
+/**
+ * Property rowIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.rowIndex=0;
+/**
+ * Property sectionRowIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.sectionRowIndex=0;
+/**
+ * Property cells
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type HTMLCollection
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.cells = new HTMLCollection();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.align="";
+/**
+ * Property bgColor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.bgColor="";
+/**
+ * Property ch
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.ch="";
+/**
+ * Property chOff
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.chOff="";
+/**
+ * Property vAlign
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.vAlign="";
+/**
+ * function insertCell(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @returns {HTMLElement}
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.insertCell = function(index){return new HTMLElement();};
+/**
+ * function insertCell(index)
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @param {Number} index
+ * @throws DOMException
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableRowElement.prototype.deleteCell = function(index){};
+
+/**
+ * Object HTMLTableRowElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLTableCellElement(){};
+HTMLTableCellElement.prototype = new HTMLElement();
+/**
+ * Property cellIndex
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.cellIndex=0;
+/**
+ * Property abbr
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.abbr="";
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.align="";
+/**
+ * Property axis
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.axis="";
+/**
+ * Property bgColor
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.bgColor="";
+/**
+ * Property ch
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.ch="";
+/**
+ * Property chOff
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.chOff="";
+/**
+ * Property colSpan
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.colSpan=0;
+/**
+ * Property headers
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.headers="";
+/**
+ * Property height
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.height="";
+/**
+ * Property noWrap
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.noWrap=false;
+/**
+ * Property rowSpan
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.rowSpan=0;
+/**
+ * Property scope
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.scope="";
+/**
+ * Property vAlign
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.vAlign="";
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLTableCellElement.prototype.width="";
+
+/**
+ * Object HTMLFrameSetElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLFrameSetElement(){};
+HTMLFrameSetElement.prototype = new HTMLElement();
+/**
+ * Property cols
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameSetElement.prototype.cols="";
+/**
+ * Property rows
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameSetElement.prototype.rows="";
+
+/**
+ * Object HTMLFrameElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLFrameElement(){};
+HTMLFrameElement.prototype = new HTMLElement();
+/**
+ * Property frameBorder
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.frameBorder="";
+/**
+ * Property longDesc
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.longDesc="";
+/**
+ * Property marginHeight
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.marginHeight="";
+/**
+ * Property marginWidth
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.marginWidth="";
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.name="";
+/**
+ * Property noResize
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Boolean
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.noResize=false;
+/**
+ * Property scrolling
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.scrolling="";
+/**
+ * Property src
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.src="";
+/**
+ * Property contentDocument
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Document
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLFrameElement.prototype.contentDocument= new HTMLDocument();
+
+/**
+ * Object HTMLIFrameElement()
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @augments HTMLElement
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ * @see HTMLElement
+ */
+function HTMLIFrameElement(){};
+HTMLIFrameElement.prototype = new HTMLElement();
+/**
+ * Property align
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.align="";
+/**
+ * Property frameBorder
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.frameBorder="";
+/**
+ * Property height
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.height="";
+/**
+ * Property longDesc
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.longDesc="";
+/**
+ * Property marginHeight
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.marginHeight="";
+/**
+ * Property marginWidth
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.marginWidth="";
+/**
+ * Property name
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.name="";
+/**
+ * Property scrolling
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.scrolling="";
+/**
+ * Property src
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.src="";
+/**
+ * Property width
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.width="";
+/**
+ * Property contentDocument
+ * http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html
+ *
+ * @type Document
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model HTML Specification.
+ */
+HTMLIFrameElement.prototype.contentDocument= new HTMLDocument();
+
+/* Stylesheets */
+/**
+ * Object CSS2Properties()
+ * http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/ecma-script-binding.html
+ *
+ * @augments Object
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Style Specification.
+ */
+function CSS2Properties(){};
+CSS2Properties.prototype = new Object();
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js
new file mode 100644
index 0000000..e93adf8
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/browserWindow.js
@@ -0,0 +1,618 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2013 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+function BarProp(){};
+BarProp.prototype = new Array();
+
+/**
+ * Object Window()
+ * @super Global
+ * @constructor
+ * @since Common Usage, no standard
+*/
+function Window(){};
+Window.prototype = new EventTarget();
+Window.prototype.self = new Window();
+Window.prototype.window = new Window();
+Window.prototype.frames = new Array();
+/**
+ * Property closed
+ * @type Boolean
+ * @memberOf Window
+ */
+Window.prototype.closed = new Boolean();
+/**
+ * Property defaultStatus
+ * @type String
+ * @memberOf Window
+ */
+Window.prototype.defaultStatus = "";
+/**
+ * Property document
+ * @type Document
+ * @memberOf Window
+ */
+Window.prototype.document= new HTMLDocument();
+/**
+ * Property history
+ * @type History
+ * @memberOf Window
+ */
+Window.prototype.history= new History();
+/**
+ * Property location
+ * @type Location
+ * @memberOf Window
+ */
+Window.prototype.location=new Location();
+/**
+ * Property name
+ * @type String
+ * @memberOf Window
+ */
+Window.prototype.name = "";
+/**
+ * Property navigator
+ * @type Navigator
+ * @memberOf Window
+ */
+Window.prototype.navigator = new Navigator();
+/**
+ * Property opener
+ * @type Window
+ * @memberOf Window
+ */
+Window.prototype.opener = new Window();
+/**
+ * Property outerWidth
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.outerWidth = 0;
+/**
+ * Property outerHeight
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.outerHeight = 0;
+/**
+ * Property pageXOffset
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.pageXOffset = 0;
+/**
+ * Property pageYOffset
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.pageYOffset = 0;
+/**
+ * Property parent
+ * @type Window
+ * @memberOf Window
+ */
+Window.prototype.parent = new Window();
+/**
+ * Property screen
+ * @type Screen
+ * @memberOf Window
+ */
+Window.prototype.screen = new Screen();
+/**
+ * Property status
+ * @type String
+ * @memberOf Window
+ */
+Window.prototype.status = "";
+/**
+ * Property top
+ * @type Window
+ * @memberOf Window
+ */
+Window.prototype.top = new Window();
+
+
+/*
+ * These properties may need to be moved into a browswer specific library.
+ */
+
+ /**
+ * Property innerWidth
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.innerWidth = 0;
+/**
+ * Property innerHeight
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.innerHeight = 0;
+/**
+ * Property screenX
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.screenX = 0;
+/**
+ * Property screenY
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.screenY = 0;
+/**
+ * Property screenLeft
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.screenLeft = 0;
+/**
+ * Property screenTop
+ * @type Number
+ * @memberOf Window
+ */
+Window.prototype.screenTop = 0;
+//Window.prototype.event = new Event();
+Window.prototype.length = 0;
+Window.prototype.scrollbars= new BarProp();
+Window.prototype.scrollX=0;
+Window.prototype.scrollY=0;
+Window.prototype.content= new Window();
+Window.prototype.menubar= new BarProp();
+Window.prototype.toolbar= new BarProp();
+Window.prototype.locationbar= new BarProp();
+Window.prototype.personalbar= new BarProp();
+Window.prototype.statusbar= new BarProp();
+Window.prototype.directories= new BarProp();
+Window.prototype.scrollMaxX=0;
+Window.prototype.scrollMaxY=0;
+Window.prototype.fullScreen="";
+Window.prototype.frameElement="";
+/* End properites */
+
+/**
+ * function alert()
+ * @param {String} message
+ * @memberOf Window
+ */
+Window.prototype.alert = function(message){};
+/**
+ * function blur()
+ * @memberOf Window
+ */
+Window.prototype.blur = function(){};
+/**
+ * function clearInterval(intervalID)
+ * @param intervalID
+ * @memberOf Window
+ */
+Window.prototype.clearInterval = function(intervalID){};
+/**
+ * function clearTimeout(intervalID)
+ * @param intervalID
+ * @memberOf Window
+ */
+Window.prototype.clearTimeout = function(intervalID){};
+/**
+ * function close()
+ * @memberOf Window
+ */
+Window.prototype.close = function(){};
+/**
+ * function confirm()
+ * @param {String} arg
+ * @memberOf Window
+ * @returns {Boolean}
+ */
+Window.prototype.confirm = function(arg){return false;};
+/**
+ * function focus()
+ * @memberOf Window
+ */
+Window.prototype.focus = function(){};
+/**
+ * function getComputedStyle(element, pseudoElt )
+ * @param {Element} element
+ * @param {String} pseudoElt
+ * @memberOf Window
+ * @returns {Object}
+ */
+Window.prototype.getComputedStyle = function(element,pseudoElt ){return new Object();};
+/**
+ * function moveTo(x, y)
+ * @param {Number} x
+ * @param {Number} y
+ * @memberOf Window
+ */
+Window.prototype.moveTo = function(x,y){};
+/**
+ * function moveBy(deltaX, deltaY)
+ * @param {Number} deltaX
+ * @param {Number} deltaY
+ * @memberOf Window
+ */
+Window.prototype.moveBy = function(deltaX,deltaY){};
+/**
+ * function open(optionalArg1, optionalArg2, optionalArg3, optionalArg4)
+ * @param {String} url
+ * @param {String} windowName
+ * @param {String} windowFeatures
+ * @param {Boolean} optionalArg4
+ * @memberOf Window
+ * @returns {Window}
+ */
+Window.prototype.open = function(url, windowName, windowFeatures, optionalArg4){return new Window();};
+/**
+ * function print()
+ * @memberOf Window
+ */
+Window.prototype.print = function(){};
+/**
+ * function prompt(text, value)
+ * @param {String} text
+ * @param {String} value
+ * @memberOf Window
+ * @returns {String}
+ */
+Window.prototype.prompt = function(text, value){return "";};
+/**
+ * function resizeTo(newOuterWidth,newOuterHeight)
+ * @param {Number} newOuterWidth
+ * @param {Number} newOuterHeighr
+ * @memberOf Window
+ */
+Window.prototype.resizeTo=function(newOuterWidth,newOuterHeight){};
+/**
+ * function resizeBy(deltaX, deltaY)
+ * @param {Number} deltaX
+ * @param {Number} deltaY
+ * @memberOf Window
+ */
+Window.prototype.resizeBy=function(deltaX,deltaY){};
+/**
+ * function scrollTo(x,y)
+ * @param {Number} x
+ * @param {Number} y
+ * @memberOf Window
+ */
+Window.prototype.scrollTo=function(x,y){};
+/**
+ * function scrollBy(pixelX,pixelY)
+ * @param {Number} pixelX
+ * @param {Number} pixelY
+ * @memberOf Window
+ */
+Window.prototype.scrollBy=function(pixelX,pixelY){};
+/**
+ * function setInterval(arg1, arg2)
+ * @param {Function} callback
+ * @param {Number} delay
+ * @memberOf Window
+ * @returns {Number}
+ */
+Window.prototype.setInterval=function(callback, delay){return 0;};
+/**
+ * function setTimeout(callback, delay)
+ * @param {Function} callback
+ * @param {Number} delay
+ * @memberOf Window
+ * @returns {Number}
+ */
+Window.prototype.setTimeout=function(callback, delay){ return 0;};
+/**
+ * function atob(encodedData)
+ * @param {String} encodedData
+ * @memberOf Window
+ * @returns {String}
+ */
+Window.prototype.atob=function(encodedData){return "";};
+/**
+ * function btoa(arg)
+ * @param {String} stringToEncode
+ * @memberOf Window
+ * @returns {String}
+ */
+Window.prototype.btoa=function(stringToEncode){return "";};
+/**
+ * function setResizable(resizable)
+ * @param {Boolean} resizable
+ * @memberOf Window
+ */
+Window.prototype.setResizable=function(resizable){};
+
+Window.prototype.captureEvents=function(eventType){};
+Window.prototype.releaseEvents=function(eventType){};
+Window.prototype.routeEvent=function(eventType){};
+Window.prototype.enableExternalCapture=function(){};
+Window.prototype.disableExternalCapture=function(){};
+Window.prototype.find=function(){};
+Window.prototype.back=function(){};
+Window.prototype.forward=function(){};
+Window.prototype.home=function(){};
+Window.prototype.stop=function(){};
+/**
+ * @param {Number} pixelX
+ * @param {Number} pixelY
+ */
+Window.prototype.scroll=function(pixelX,pixelY){};
+/* End functions */
+
+/**
+ * Object History()
+ * @super Object
+ * @constructor
+ * @since Common Usage, no standard
+ */
+function History(){};
+History.prototype=new Object();
+History.prototype.history = new History();
+/**
+ * Property length
+ * @type Number
+ * @memberOf History
+ */
+History.prototype.length = 0;
+/**
+ * function back()
+ * @memberOf History
+ */
+History.prototype.back = function(){};
+/**
+ * function forward()
+ * @memberOf History
+ */
+History.prototype.forward = function(){};
+/**
+ * function back()
+ * @param arg
+ * @memberOf History
+ */
+History.prototype.go = function(arg){};
+
+/**
+ * Object Location()
+ * @super Object
+ * @constructor
+ * @since Common Usage, no standard
+ */
+function Location(){};
+Location.prototype = new Object();
+Location.prototype.location = new Location();
+/**
+ * Property hash
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.hash = "";
+/**
+ * Property host
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.host = "";
+/**
+ * Property hostname
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.hostname = "";
+/**
+ * Property href
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.href = "";
+/**
+ * Property pathname
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.pathname = "";
+/**
+ * Property port
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.port = "";
+/**
+ * Property protocol
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.protocol = "";
+/**
+ * Property search
+ * @type String
+ * @memberOf Location
+ */
+Location.prototype.search = "";
+/**
+ * function assign(arg)
+ * @param {String} arg
+ * @memberOf Location
+ */
+Location.prototype.assign = function(arg){};
+/**
+ * function reload(optionalArg)
+ * @param {Boolean} optionalArg
+ * @memberOf Location
+ */
+Location.prototype.reload = function(optionalArg){};
+/**
+ * function replace(arg)
+ * @param {String} arg
+ * @memberOf Location
+ */
+Location.prototype.replace = function(arg){};
+
+/**
+ * Object Navigator()
+ * @super Object
+ * @constructor
+ * @since Common Usage, no standard
+*/
+function Navigator(){};
+Navigator.prototype = new Object();
+Navigator.prototype.navigator = new Navigator();
+/**
+ * Property appCodeName
+ * @type String
+ * @memberOf Navigator
+ */
+Navigator.prototype.appCodeName = "";
+/**
+ * Property appName
+ * @type String
+ * @memberOf Navigator
+ */
+Navigator.prototype.appName = "";
+/**
+ * Property appVersion
+ * @type String
+ * @memberOf Navigator
+ */
+Navigator.prototype.appVersion = "";
+/**
+ * Property cookieEnabled
+ * @type Boolean
+ * @memberOf Navigator
+ */
+Navigator.prototype.cookieEnabled = new Boolean();
+/**
+ * Property mimeTypes
+ * @type Array
+ * @memberOf Navigator
+ */
+Navigator.prototype.mimeTypes = new Array();
+/**
+ * Property platform
+ * @type String
+ * @memberOf Navigator
+ */
+Navigator.prototype.platform = "";
+/**
+ * Property plugins
+ * @type Array
+ * @memberOf Navigator
+ */
+Navigator.prototype.plugins = new Array();
+/**
+ * Property userAgent
+ * @type String
+ * @memberOf Navigator
+ */
+Navigator.prototype.userAgent = "";
+/**
+ * function javaEnabled()
+ * @returns {Boolean}
+ * @memberOf Navigator
+ */
+Navigator.prototype.javaEnabled = function(){return false;};
+
+/**
+ * Object Screen()
+ * @super Object
+ * @constructor
+ * @since Common Usage, no standard
+*/
+function Screen(){};
+Screen.prototype = new Object();
+Screen.prototype.screen = new Screen();
+/**
+ * Property availHeight
+ * @type Number
+ * @memberOf Screen
+ */
+Navigator.prototype.availHeight = 0;
+/**
+ * Property availWidth
+ * @type Number
+ * @memberOf Screen
+ */
+Navigator.prototype.availWidth = 0;
+/**
+ * Property colorDepth
+ * @type Number
+ * @memberOf Screen
+ */
+Navigator.prototype.colorDepth = 0;
+/**
+ * Property height
+ * @type Number
+ * @memberOf Screen
+ */
+Navigator.prototype.height = 0;
+/**
+ * Property width
+ * @type Number
+ * @memberOf Screen
+ */
+Navigator.prototype.width = 0;
+
+Event.prototype=new Object();
+// PhaseType
+Event.prototype.CAPTURING_PHASE = 1;
+Event.prototype.AT_TARGET = 2;
+Event.prototype.BUBBLING_PHASE = 3;
+
+Event.prototype.type="";
+Event.prototype.target=new EventTarget();
+Event.prototype.currentTarget=new EventTarget();
+Event.prototype.eventPhase=0;
+Event.prototype.bubbles=false;
+Event.prototype.cancelable=false;
+Event.prototype.timeStamp=0;
+Event.prototype.stopPropagation=function(){};
+Event.prototype.preventDefault=function(){};
+/**
+ * @param {String} eventTypeArg
+ * @param {Boolean} canBubbleArg
+ * @param {Boolean} cancelableArg
+ */
+Event.prototype.initEvent=function(eventTypeArg,
+ canBubbleArg,
+ cancelableArg){};
+function EventListener(){};
+EventListener.prototype=new Object();
+/**
+ * @param {Event} event
+ * @memberOf EventListener
+ */
+EventListener.prototype.handleEvent=function(event){};
+
+function EventTarget(){};
+EventTarget.prototype=new Object();
+/*
+ * These functions may need to be moved into a browser specific library.
+ */
+/**
+ * @memberOf Window
+ * @param event {Event}
+ * @throws {EventException}
+ */
+EventTarget.prototype.dispatchEvent=function(event){};
+
+// https://developer.mozilla.org/en-US/docs/DOM/element.addEventListener
+/**
+ * @memberOf Window
+ * @param {String} type
+ * @param {EventListener} listener
+ * @param {Boolean} useCapture
+ */
+EventTarget.prototype.addEventListener=function(type, listener, useCapture){};
+// https://developer.mozilla.org/en-US/docs/DOM/element.removeEventListener
+/**
+ * @memberOf Window
+ * @param {String} type
+ * @param {EventListener} listener
+ * @param {Boolean} useCapture
+ */
+EventTarget.prototype.removeEventListener=function(type, listener, useCapture){};
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js
new file mode 100644
index 0000000..30be91a
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/dom5.js
@@ -0,0 +1,922 @@
+/*******************************************************************************
+ * Copyright (c) 2013 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ ******************************************************************************/
+
+/**
+ * function querySelector(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf Document
+ * @returns {Element}
+ */
+Document.prototype.querySelector=function(selectors){return new Element();};
+
+/**
+ * function querySelectorAll(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf Document
+ * @returns {NodeList}
+ */
+Document.prototype.querySelectorAll=function(selectors){return new NodeList();};
+
+/**
+ * function querySelector(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf DocumentFragment
+ * @returns {Element}
+ */
+DocumentFragment.prototype.querySelector=function(selectors){return new Element();};
+
+/**
+ * function querySelectorAll(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf DocumentFragment
+ * @returns {NodeList}
+ */
+DocumentFragment.prototype.querySelectorAll=function(selectors){return new NodeList();};
+
+/**
+ * function querySelector(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf Element
+ * @returns {Element}
+ */
+Element.prototype.querySelector=function(selectors){return new Element();};
+
+/**
+ * function querySelectorAll(selectors)
+ * http://www.w3.org/TR/2012/PR-selectors-api-20121213
+ * @param {String} selectors
+ * @memberOf Element
+ * @returns {NodeList}
+ */
+Element.prototype.querySelectorAll=function(selectors){return new NodeList();};
+
+/**
+ * Property state
+ * @type Object
+ * @memberOf History
+ */
+History.prototype.state=new Object();
+
+/**
+ * function pushState(data,title,url)
+ * http://www.w3.org/TR/2012/CR-html5-20121217/browsers.html#history
+ * @param {Object} data
+ * @param {String} title
+ * @param {String} url - optional
+ * @memberOf History
+ */
+History.prototype.pushState=function(data,title,url){};
+
+/**
+ * function replaceState(data,title,url)
+ * http://www.w3.org/TR/2012/CR-html5-20121217/browsers.html#history
+ * @param {Object} data
+ * @param {String} title
+ * @param {String} url - optional
+ * @memberOf History
+ */
+History.prototype.replaceState=function(data,title,url){};
+
+/**
+ * Property sessionStorage
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @type Storage
+ * @memberOf Window
+ */
+Window.prototype.sessionStorage=new Storage();
+
+/**
+ * Property localStorage
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @type Storage
+ * @memberOf Window
+ */
+Window.prototype.localStorage=new Storage();
+
+/**
+ * Object Storage
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ */
+function Storage(){};
+Storage.prototype=new Object();
+
+/**
+ * Property length
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @type Number
+ * @memberOf Storage
+ */
+Storage.prototype.length=new Number();
+
+/**
+ * function key(index)
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @param {Number} index
+ * @memberOf Storage
+ * @returns String
+ */
+Storage.prototype.key=function(index){return new String();};
+
+/**
+ * function getItem(key)
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @param {String} key
+ * @memberOf Storage
+ * @returns String
+ */
+Storage.prototype.getItem=function(key){return new String();};
+
+/**
+ * function setItem(key,value)
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @param {String} key
+ * @param {String} value
+ * @memberOf Storage
+ */
+Storage.prototype.setItem=function(key,value){};
+
+/**
+ * function removeItem(key)
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @param {String} key
+ * @memberOf Storage
+ */
+Storage.prototype.removeItem=function(key){};
+
+/**
+ * function clear()
+ * http://www.w3.org/TR/2011/CR-webstorage-20111208
+ * @memberOf Storage
+ */
+Storage.prototype.clear=function(){};
+
+/**
+ * Object WebSocket
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @constructor
+ * @param {String} url
+ */
+function WebSocket(url){};
+WebSocket.prototype=new Object();
+
+/**
+ * Constant WebSocket.CONNECTING=0
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @constant
+ * @type Number
+ */
+WebSocket.prototype.CONNECTING=0;
+
+/**
+ * Constant WebSocket.OPEN=1
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @constant
+ * @type Number
+ */
+WebSocket.prototype.OPEN=1;
+
+/**
+ * Constant WebSocket.CLOSING=2
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @constant
+ * @type Number
+ */
+WebSocket.prototype.CLOSING=2;
+
+/**
+ * Constant WebSocket.CLOSED=3
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @constant
+ * @type Number
+ */
+WebSocket.prototype.CLOSED=3;
+
+/**
+ * Property url
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type String
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.url=new String();
+
+/**
+ * Property readyState
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type Number
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.readyState=new Number();
+
+/**
+ * Property bufferedAmount
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type Number
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.bufferedAmount=new Number();
+
+/**
+ * Property extensions
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type String
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.extensions=new String();
+
+/**
+ * Property protocol
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type String
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.protocol=new String();
+
+/**
+ * Property binaryType
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @type String
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.binaryType=new String();
+
+/**
+ * function close(code,reason)
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @param {Number} code - optional
+ * @param {String} reason - optional
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.close=function(code,reason){};
+
+/**
+ * function send(data)
+ * http://www.w3.org/TR/2012/CR-websockets-20120920
+ * @param {Object} data - may be a String, Blob, ArrayBuffer, or ArrayBufferView
+ * @memberOf WebSocket
+ */
+WebSocket.prototype.send=function(data){};
+
+/**
+ * Property geolocation
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Geolocation
+ * @memberOf Navigator
+ */
+Navigator.prototype.geolocation=new Geolocation();
+
+/**
+ * Object Geolocation
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ */
+function Geolocation(){};
+Geolocation.prototype=new Object();
+
+/**
+ * function getCurrentPosition(successCallback,errorCallback,options)
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510/
+ * @param {Function} successCallback (Position pos)
+ * @param {Function} errorCallback (PositionError error) - optional
+ * @param {PositionOptions} options - optional
+ * @memberOf Geolocation
+ */
+Geolocation.prototype.getCurrentPosition=function(successCallback,errorCallback,options){};
+
+/**
+ * function watchPosition(successCallback,errorCallback,options)
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510/
+ * @param {Function} successCallback (Position pos)
+ * @param {Function} errorCallback (PositionError error) - optional
+ * @param {PositionOptions} options - optional
+ * @memberOf Geolocation
+ * @returns {Number}
+ */
+Geolocation.prototype.watchPosition=function(successCallback,errorCallback,options){return new Number();};
+
+/**
+ * function clearWatch(watchId)
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @param {Number} watchId
+ * @memberOf Geolocation
+ */
+Geolocation.prototype.clearWatch=function(watchId){};
+
+/**
+ * Object Coordinates
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ */
+function Coordinates(){};
+Coordinates.prototype=new Object();
+
+/**
+ * Property latitude
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.latitude=new Number();;
+
+/**
+ * Property longitude
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.longitude=new Number();;
+
+/**
+ * Property altitude
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.altitude=new Number();;
+
+/**
+ * Property accuracy
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.accuracy=new Number();;
+
+/**
+ * Property altitudeAccuracy
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.altitudeAccuracy=new Number();;
+
+/**
+ * Property heading
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.heading=new Number();;
+
+/**
+ * Property speed
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Coordinates
+ */
+Coordinates.prototype.speed=new Number();
+
+/**
+ * Object Position
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ */
+function Position(){};
+Position.prototype=new Object();
+
+/**
+ * Property coords
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Coordinates
+ * @memberOf Position
+ */
+Position.prototype.coords=new Coordinates();
+
+/**
+ * Property timestamp
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf Position
+ */
+Position.prototype.timestamp=new Number;
+
+/**
+ * Object PositionError
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ */
+function PositionError(){};
+PositionError.prototype=new Object();
+
+/**
+ * Constant PositionError.PERMISSION_DENIED=1
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @constant
+ * @type Number
+ */
+PositionError.prototype.PERMISSION_DENIED=1;
+
+/**
+ * Constant PositionError.POSITION_UNAVAILABLE=2
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @constant
+ * @type Number
+ */
+PositionError.prototype.POSITION_UNAVAILABLE=2;
+
+/**
+ * Constant PositionError.TIMEOUT=3
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @constant
+ * @type Number
+ */
+PositionError.prototype.TIMEOUT=3;
+
+/**
+ * Property code
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf PositionError
+ */
+PositionError.prototype.code=new Number();
+
+/**
+ * Property message
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type String
+ * @memberOf PositionError
+ */
+PositionError.prototype.message=new String();
+
+/**
+ * Object PositionOptions
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ */
+function PositionOptions(){};
+PositionOptions.prototype=new Object();
+
+/**
+ * Property enableHighAccuracy
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Boolean
+ * @memberOf PositionOptions
+ */
+PositionOptions.prototype.enableHighAccuracy=new Boolean();
+
+/**
+ * Property timeout
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf PositionOptions
+ */
+PositionOptions.prototype.timeout=new Number();
+
+/**
+ * Property maximumAge
+ * http://www.w3.org/TR/2012/PR-geolocation-API-20120510
+ * @type Number
+ * @memberOf PositionOptions
+ */
+PositionOptions.prototype.maximumAge=new Number();
+
+/**
+ * Object TimeRanges
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ */
+function TimeRanges(){};
+TimeRanges.prototype=new Object();
+
+/**
+ * Property length
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf TimeRanges
+ */
+TimeRanges.prototype.length=new Number();
+
+/**
+ * function start(index)
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @param {Number} index
+ * @memberOf TimeRanges
+ * @returns {Number}
+ */
+function start(index) {return new Number();};
+
+/**
+ * function end(index)
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @param {Number} index
+ * @memberOf TimeRanges
+ * @returns {Number}
+ */
+function end(index) {return new Number();};
+
+/**
+ * Object MediaError
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ */
+function MediaError(){};
+MediaError.prototype=new Object();
+
+/**
+ * Constant MediaError.MEDIA_ERR_ABORTED=1
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+MediaError.prototype.MEDIA_ERR_ABORTED=1;
+
+/**
+ * Constant MediaError.MEDIA_ERR_NETWORK=2
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+MediaError.prototype.MEDIA_ERR_NETWORK=2;
+
+/**
+ * Constant MediaError.MEDIA_ERR_DECODED=3
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+MediaError.prototype.MEDIA_ERR_DECODE=3;
+
+/**
+ * Constant MediaError.MEDIA_ERR_SRC_NOT_SUPPORTED=4
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+MediaError.prototype.MEDIA_ERR_SRC_NOT_SUPPORTED=4;
+
+/**
+ * Property code
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf MediaError
+ */
+MediaError.prototype.code=new Number();
+
+/**
+ * Object HTMLMediaElement
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @augments HTMLElement
+ * @see HTMLElement
+ */
+function HTMLMediaElement(){};
+HTMLMediaElement.prototype = new HTMLElement();
+
+/**
+ * Property src
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type String
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.src=new String();
+
+/**
+ * Property currentSrc
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type String
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.currentSrc=new String();
+
+/**
+ * Property crossOrigin
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type String
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.crossOrigin=new String();
+
+/**
+ * Constant HTMLMediaElement.NETWORK_EMPTY=0
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.NETWORK_EMPTY=0;
+
+/**
+ * Constant HTMLMediaElement.NETWORK_IDLE=1
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.NETWORK_IDLE=1;
+
+/**
+ * Constant HTMLMediaElement.NETWORK_LOADING=2
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.NETWORK_LOADING=2;
+
+/**
+ * Constant HTMLMediaElement.NETWORK_NO_SOURCE=3
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.NETWORK_NO_SOURCE=3;
+
+/**
+ * Property networkState
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.networkState=new Number();
+
+/**
+ * Property preload
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type String
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.preload=new String();
+
+/**
+ * Property buffered
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type TimeRanges
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.buffered=new TimeRanges();
+
+/**
+ * function load()
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.load=function(){};
+
+/**
+ * function canPlayType(type)
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @param {String} type
+ * @memberOf HTMLMediaElement
+ * @returns {String}
+ */
+HTMLMediaElement.prototype.canPlayType=function(type){new String();};
+
+/**
+ * Constant HTMLMediaElement.HAVE_NOTHING=0
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.HAVE_NOTHING=0;
+
+/**
+ * Constant HTMLMediaElement.HAVE_METADATA=1
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.HAVE_METADATA=1;
+
+/**
+ * Constant HTMLMediaElement.HAVE_CURRENT_DATA=2
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.HAVE_CURRENT_DATA=2;
+
+/**
+ * Constant HTMLMediaElement.HAVE_FUTURE_DATA=3
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.HAVE_FUTURE_DATA=3;
+
+/**
+ * Constant HTMLMediaElement.HAVE_ENOUGH_DATA=4
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @constant
+ * @type Number
+ */
+HTMLMediaElement.prototype.HAVE_ENOUGH_DATA=4;
+
+/**
+ * Property readyState
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.readyState=new Number();
+
+/**
+ * Property seeking
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.seeking=new Boolean();
+
+/**
+ * Property currentTime
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.currentTime=new Number();
+
+/**
+ * Property initialTime
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.initialTime=new Number();
+
+/**
+ * Property duration
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.duration=new Number();
+
+/**
+ * Property startOffsetTime
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Date
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.startOffsetTime=new Date();
+
+/**
+ * Property paused
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.paused=new Boolean();
+
+/**
+ * Property defaultPlaybackRate
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.defaultPlaybackRate=new Number();
+
+/**
+ * Property playbackRate
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.playbackRate=new Number();
+
+/**
+ * Property played
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type TimeRanges
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.played=new TimeRanges();
+
+/**
+ * Property seekable
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type TimeRanges
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.seekable=new TimeRanges();
+
+/**
+ * Property ended
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.ended=new Boolean();
+
+/**
+ * Property autoplay
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.autoplay=new Boolean();
+
+/**
+ * Property loop
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.loop=new Boolean();
+
+/**
+ * function play()
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.play=function(){};
+
+/**
+ * function pause()
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.pause=function(){};
+
+/**
+ * Property controls
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.controls=new Boolean();
+
+/**
+ * Property volume
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.volume=new Number();
+
+/**
+ * Property muted
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.muted=new Boolean();
+
+/**
+ * Property defaultMuted
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Boolean
+ * @memberOf HTMLMediaElement
+ */
+HTMLMediaElement.prototype.defaultMuted=new Boolean();
+
+/**
+ * Object HTMLAudioElement
+ * http://www.w3.org/TR/2012/WD-html5-20120329/the-audio-element.html
+ * @augments HTMLMediaElement
+ * @constructor
+ * @param {String} src
+ * @see HTMLMediaElement
+ */
+function HTMLAudioElement(src){};
+HTMLAudioElement.prototype = new HTMLMediaElement();
+
+/**
+ * Object HTMLVideoElement
+ * http://www.w3.org/TR/2012/WD-html5-20120329/the-audio-element.html
+ * @augments HTMLMediaElement
+ * @see HTMLMediaElement
+ */
+function HTMLVideoElement(){};
+HTMLVideoElement.prototype = new HTMLMediaElement();
+
+/**
+ * Property width
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLVideoElement
+ */
+HTMLVideoElement.prototype.width=new Number();
+
+/**
+ * Property height
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLVideoElement
+ */
+HTMLVideoElement.prototype.height=new Number();
+
+/**
+ * Property videoWidth
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLVideoElement
+ */
+HTMLVideoElement.prototype.videoWidth=new Number();
+
+/**
+ * Property videoHeight
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type Number
+ * @memberOf HTMLVideoElement
+ */
+HTMLVideoElement.prototype.videoHeight=new Number();
+
+/**
+ * Property poster
+ * http://www.w3.org/TR/2012/WD-html5-20120329/media-elements.html
+ * @type String
+ * @memberOf HTMLVideoElement
+ */
+HTMLVideoElement.prototype.poster=new String();
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js
new file mode 100644
index 0000000..1ca5a60
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/system.js
@@ -0,0 +1,1458 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ ******************************************************************************
+* Please see http://www.w3.org/TR/2000/REC-DOM-Level-2-Core-20001113/ecma-script-binding.html
+*/
+
+/**
+ * Object Object()
+ * @constructor
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Object(){};
+ /**
+ * function toString()
+ * @memberOf Object
+ * @returns {String}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.toString = function(){return "";};
+ /**
+ * function toLocaleString()
+ * @memberOf Object
+ * @returns {String}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.toLocaleString = function(){return "";};
+ /**
+ * function valueOf()
+ * @memberOf Object
+ * @returns {Object}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.valueOf = function(){return new Object();};
+ /**
+ * function hasOwnProperty(name)
+ * @memberOf Object
+ * @param {String} name
+ * @returns {Boolean}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.hasOwnProperty = function(name){return true;};
+ /**
+ * function isPrototypeOf(o)
+ * @memberOf Object
+ * @param {Object} o
+ * @returns {Boolean}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.isPrototypeOf = function(o){return true;};
+ /**
+ * function propertyIsEnumerable(name)
+ * @memberOf Object
+ * @param {Object} name
+ * @returns {Boolean}
+ * @see Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.propertyIsEnumerable = function(name){return true;};
+/**
+ * Property constructor
+ * @type Function
+ * @memberOf Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Object.prototype.constructor = new Function();
+
+/**
+ * Object String()
+ * @constructor
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function String(){}
+String.prototype = new Object();
+/**
+ * static function fromCharCode(charCode1, ...)
+ * @memberOf String
+ * @param {Number} charCode
+ * @returns {String}
+ * @static
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.fromCharCode = function(charCode){return "";};
+/**
+ * Property length
+ * @type Number
+ * @memberOf String
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.length = 1;
+ /**
+ * function charAt(position)
+ * @memberOf String
+ * @param {Number} position
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.charAt = function(position){return "";};
+ /**
+ * function charCodeAt(position)
+ * @memberOf String
+ * @param {Number} position
+ * @returns {Number}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.charCodeAt = function(position){return 0;};
+ /**
+ * function concat(value1, ...)
+ * @memberOf String
+ * @param {String} value
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.concat = function(value){return "";};
+ /**
+ * function indexOf(searchString, startPosition)
+ * @memberOf String
+ * @param {String} searchString
+ * @param {Number} startPosition
+ * @returns {Number}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.indexOf = function(searchString, startPosition){return 1;};
+ /**
+ * function lastIndexOf(searchString, startPosition)
+ * @memberOf String
+ * @param {String} searchString
+ * @param {Number} startPosition
+ * @returns {Number}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.lastIndexOf = function(searchString, startPosition){return 1;};
+ /**
+ * function localeCompare(otherString)
+ * @memberOf String
+ * @param {String} otherString
+ * @returns {Number}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.localeCompare = function(otherString){return 0;};
+ /**
+ * function match(regexp)
+ * @memberOf String
+ * @param {RegExp} regexp
+ * @returns {Array}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.match = function(regexp){return [];};
+ /**
+ * function replace(regexp, replaceValue)
+ * @memberOf String
+ * @param {RegExp} regexp
+ * @param {String} replaceValue
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.replace = function(regexp, replaceValue){return "";};
+ /**
+ * function search(regexp)
+ * @memberOf String
+ * @param {RegExp} regexp
+ * @returns {Number}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.search = function(regexp){return 1;};
+ /**
+ * function slice(start, end)
+ * @memberOf String
+ * @param {Number} start
+ * @param {Number} end
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.slice = function(start, end){return "";};
+ /**
+ * function split(separator, limit)
+ * @memberOf String
+ * @param {String} separator
+ * @param {Number} limit
+ * @returns {Array}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.split = function(separator, limit){return [];};
+ /**
+ * function substring(start, end)
+ * @memberOf String
+ * @param {Number} start
+ * @param {Number} end
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.substring = function(start, end){return "";};
+ /**
+ * function toLowerCase()
+ * @memberOf String
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.toLowerCase = function(){return "";};
+ /**
+ * function toLocaleLowerCase()
+ * @memberOf String
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.toLocaleLowerCase = function(){return "";};
+ /**
+ * function toUpperCase()
+ * @memberOf String
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.toUpperCase= function (){return "";};
+ /**
+ * function toLocaleUpperCase()
+ * @memberOf String
+ * @returns {String}
+ * @see String
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+String.prototype.toLocaleUpperCase = function(){return "";};
+
+/**
+ * Object Number()
+ * @constructor
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Number(){}
+Number.prototype = new Object();
+/**
+ * property MIN_VALUE
+ * @type Number
+ * @memberOf Number
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.MIN_VALUE = 0;
+/**
+ * property MAX_VALUE
+ * @type Number
+ * @memberOf Number
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.MAX_VALUE = 0 ;
+/**
+ * property NaN
+ * @type Number
+ * @memberOf Number
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.NaN = 0;
+/**
+ * property NEGATIVE_INFINITY
+ * @type Number
+ * @memberOf Number
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.NEGATIVE_INFINITY = 0;
+/**
+ * property POSITIVE_INFINITY
+ * @type Number
+ * @memberOf Number
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.POSITIVE_INFINITY = 0;
+/**
+ * function toFixed(fractionDigits)
+ * @memberOf Number
+ * @param {Number} fractionDigits
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Number.prototype.toFixed = function(fractionDigits){return "";};
+/**
+ * function toExponential(fractionDigits)
+ * @memberOf Number
+ * @param {Number} fractionDigits
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+Number.prototype.toExponential = function(fractionDigits){return "";};
+/**
+ * function toPrecision(precision)
+ * @memberOf Number
+ * @param {Number} fractionDigits
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+Number.prototype.toPrecision = function(fractionDigits){return "";};
+
+/**
+ * Object Boolean()
+ * @constructor
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function Boolean(){};
+Boolean.prototype = new Object();
+
+/**
+ * Object Array()
+ * @constructor
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Array(){};
+Array.prototype = new Object();
+/**
+ * Property length
+ * @type Number
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.length = 1;
+/**
+ * function concat(args)
+ * @param {Array} args
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.concat = function(args){return [];};
+/**
+ * function join(seperator)
+ * @param {String} seperator
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.join = function(seperator){return [];};
+/**
+ * function pop()
+ * @returns {Object}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.pop = function(){return new Object();};
+/**
+ * function push(args)
+ * @param {Array} args
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.push = function(args){};
+/**
+ * function reverse()
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.reverse = function(){return [];};
+/**
+ * function shift()
+ * @returns {Object}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.shift = function(){return new Object();};
+/**
+ * function slice(start, end)
+ * @param {Number} start
+ * @param {Number} end
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.slice = function(start, end){return [];};
+/**
+ * function sort(funct)
+ * @param {Function} funct
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.sort = function(funct){return [];};
+/**
+ * function splice(start, deletecount, items)
+ * @param {Number} start
+ * @param {Number} deletecount
+ * @param {Array} items
+ * @returns {Array}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.splice = function(start, deletecount, items){return [];};
+/**
+ * function unshift(items)
+ * @param {Object} values
+ * @returns {Number}
+ * @memberOf Array
+ * @see Array
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Array.prototype.unshift = function(values){return 1;};
+
+/**
+ * Object Function()
+ * @constructor
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Function(){};
+Function.prototype = new Object();
+/**
+ * function apply (thisObject, argArray)
+ * @param {Object} thisObject
+ * @param {Array} argArray
+ * @returns {Object}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Function.prototype.apply = function(thisArg, argArray){return new Object();};
+/**
+ * function call (thisObject, args)
+ * @param {Object} thisObject
+ * @param {Object} args
+ * @returns {Object}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Function.prototype.call = function(thisObject, args){return new Object();};
+/**
+ * property length
+ * @type Number
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Function.prototype.length = 0;
+
+/**
+ * Object Date(s)
+ * @constructor
+ * @param {String} s
+ * @extends Object
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Date(s){};
+Date.prototype = new Object();
+/**
+ * function UTC(hour, min, sec, ms)
+ * @memberOf Date
+ * @param {Number} hour
+ * @param {Number} min
+ * @param {Number} sec
+ * @param {Number} ms
+ * @returns {Number}
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+Date.UTC = function(hour, min, sec, ms){return 0;};
+/**
+ * function parse(string)
+ * @memberOf Date
+ * @param {String} string
+ * @returns {Number}
+ * @static
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.parse = function(string){return 0;};
+/**
+ * function toDateString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.toDateString = function(){return "";};
+/**
+ * function toTimeString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.toTimeString = function(){return "";};
+/**
+ * function toLocaleString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.toLocaleString = function(){return "";};
+/**
+ * function toLocaleDateString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.toLocaleDateString = function(){return "";};
+/**
+ * function toLocaleTimeString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.toLocaleTimeString = function(){return "";};
+/**
+ * function valueOf()
+ * @memberOf Date
+ * @returns {Object}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.valueOf = function(){return new Object();};
+/**
+ * function getFullYear()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getFullYear = function(){return 0;};
+/**
+ * function getTime()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getTime = function(){return 0;};
+/**
+ * function getUTCFullYear()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCFullYear = function(){return 0;};
+/**
+ * function getMonth()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getMonth = function(){return 0;};
+/**
+ * function getUTCMonth()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCMonth = function(){return 0;};
+/**
+ * function getDate()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getDate = function(){return 0;};
+/**
+ * function getUTCDate()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCDate = function(){return 0;};
+/**
+ * function getDay()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getDay = function(){return 0;};
+/**
+ * function getUTCDay()
+ * @memberOf Date
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+
+ */
+Date.prototype.getUTCDay=function(){return 0;};
+/**
+ * function getHours()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getHours = function(){return 0;};
+/**
+ * function getUTCHours()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCHours = function(){return 0;};
+/**
+ * function getMinutes()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getMinutes = function(){return 0;};
+/**
+ * function getUTCMinutes()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCMinutes = function(){return 0;};
+/**
+ * function getSeconds()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getSeconds = function(){return 0;};
+/**
+ * function getUTCSeconds()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCSeconds = function(){return 0;};
+/**
+ * function getMilliseconds()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getMilliseconds = function(){return 0;};
+/**
+ * function getUTCMilliseconds()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getUTCMilliseconds = function(){return 0;};
+/**
+ * function getTimezoneOffset()
+ * @memberOf Date
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.getTimezoneOffset = function(){return 0;};
+/**
+ * function setTime(value)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} value
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setTime = function(value){return 0;};
+
+/**
+ * function setMilliseconds(value)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} value
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setMilliseconds = function(value){return 0;};
+/**
+ * function setUTCMilliseconds(ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCMilliseconds = function(ms){return 0;};
+/**
+ * function setSeconds(sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setSeconds = function(sec,ms){return 0;};
+/**
+ * function setUTCSeconds(sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCSeconds=function(sec,ms){return 0;};
+/**
+ * function setMinutes(min,sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} min
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setMinutes=function(min,sec,ms){return 0;};
+/**
+ * function setUTCMinute(min,sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} min
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCMinute = function(min,sec,ms){return 0;};
+/**
+ * function setHours(hour, min,sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} hour
+ * @param {Number} min
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setHours = function(hour,min,sec,ms){return 0;};
+/**
+ * function setUTCHours(hour, min,sec,ms)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} hour
+ * @param {Number} min
+ * @param {Number} sec
+ * @param {Number} ms
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCHours = function(hour,min,sec,ms){return 0;};
+
+/**
+ * function setDate(date)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} date
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setDate = function(date){return 0;};
+
+/**
+ * function setUTCDate(date)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} date
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCDate = function(date){return 0;};
+
+/**
+ * function setMonth(month,date)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} date
+ * @param {Number} month
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setMonth = function(month,date){return 1;};
+/**
+ * function setUTCMonth(month,date)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} date
+ * @param {Number} month
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCMonth = function(month,date){return 1;};
+/**
+ * function setFullYear(month,date)
+ * @memberOf Date
+ * @returns {Number}
+ * @param {Number} date
+ * @param {Number} month
+ * @param {Number} year
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setFullYear = function(year, month,date){return 0;};
+/**
+ * function setUTCFullYear(month,date)
+ * @memberOf Date
+ * @returns {Date}
+ * @param {Number} date
+ * @param {Number} month
+ * @param {Number} year
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Date.prototype.setUTCFullYear = function(year, month,date){};
+/**
+ * function toUTCString()
+ * @memberOf Date
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+Date.prototype.toUTCString = function(){return "";};
+
+/**
+ * Property NaN
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+var NaN=0;
+/**
+ * Property Infinity
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+var Infinity=0;
+/**
+ * function eval(s)
+ * @param {String} s
+ * @type Object
+ * @returns {Object}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function eval(s){return new Object();};
+
+//@GINO: Bug 197987 (Temp Fix)
+/**
+ * Property debugger
+ * @description Debugger keyword
+ */
+var debugger=null;
+
+/**
+ * Property undefined
+ * @description undefined
+*/
+var undefined=null;
+
+/**
+ * function parseInt(s,radix)
+ * @param {String} s
+ * @param {Number} radix
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function parseInt(s,radix){return 0;};
+/**
+ * function parseFloat(s)
+ * @param {String} s
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function parseFloat(s){return 0;};
+/**
+ * function escape(s)
+ * @param {String} s
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function escape(s){return "";};
+/**
+ * function unescape(s)
+ * @param {String} s
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function unescape(s){return "";};
+/**
+ * function isNaN(number)
+ * @param {String} number
+ * @type Boolean
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function isNaN(number){return false;};
+/**
+ * function isFinite(number)
+ * @param {String} number
+ * @type Boolean
+ * @returns {Boolean}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function isFinite(number){return false;};
+/**
+ * function decodeURI(encodedURI)
+ * @param {String} encodedURI
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function decodeURI(encodedURI){return "";};
+/**
+ * @param {String} uriComponent
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function decodeURIComponent(uriComponent){return "";};
+/**
+ * function encodeURIComponent(uriComponent)
+ * @param {String} uriComponent
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function encodeURIComponent(uriComponent){return "";};
+
+/**
+ * function encodeURIComponent(URI)
+ * @param {String} URI
+ * @type String
+ * @returns {String}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+*/
+function encodeURI(URI){return "";};
+
+/**
+ * Object Math(\s)
+ * @super Object
+ * @constructor
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+
+ */
+function Math(){};
+Math.prototype=new Object();
+/**
+ * Property E
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.E=0;
+/**
+ * Property LN10
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.LN10=0;
+/**
+ * Property LN2
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.LN2=0;
+/**
+ * Property LOG2E
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.LOG2E=0;
+/**
+ * Property LOG10E
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.LOG10E=0;
+/**
+ * Property PI
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.PI=0;
+/**
+ * Property SQRT1_2
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.SQRT1_2=0;
+/**
+ * Property SQRT2
+ * @memberOf Math
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.SQRT2=0;
+/**
+ * function abs(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.abs=function(x){return 0;};
+/**
+ * function acos(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.acos=function(x){return 0;};
+/**
+ * function asin(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.asin=function(x){return 0;};
+/**
+ * function atan(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.atan=function(x){return 0;};
+/**
+ * function atan2(x,y)
+ * @memberOf Math
+ * @param {Number} x
+ * @param {Number} y
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.atan2=function(x,y){return 0;};
+/**
+ * function ceil(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.ceil=function(x){return 0;};
+/**
+ * function cos(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.cos=function(x){return 0;};
+/**
+ * function exp(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.exp=function(x){return 0;};
+/**
+ * function floor(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.floor=function(x){return 0;};
+/**
+ * function log(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.log=function(x){return 0;};
+/**
+ * function max(arg)
+ * @memberOf Math
+ * @param {Number} args
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.max=function(args){return 0;};
+/**
+ * function min(arg)
+ * @memberOf Math
+ * @param {Number} args
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.min=function(args){return 0;};
+/**
+ * function pow(x,y)
+ * @memberOf Math
+ * @param {Number} x
+ * @param {Number} y
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.pow=function(x,y){return 0;};
+/**
+ * function pow()
+ * @memberOf Math
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.random=function(){return 0;};
+/**
+ * function round(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.round=function(x){return 0;};
+/**
+ * function sin(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.sin=function(x){return 0;};
+/**
+ * function sqrt(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.sqrt=function(x){return 0;};
+/**
+ * function tan(x)
+ * @memberOf Math
+ * @param {Number} x
+ * @type Number
+ * @returns {Number}
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Math.tan=function(x){return 0;};
+/**
+ * Object RegExp()
+ * @super Object
+ * @constructor
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function RegExp(){};
+RegExp.prototype=new Object();
+/**
+ * function exec(string)
+ * @param {String} string
+ * @returns {Array}
+ * @type Array
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.exec=function(string){return [];};
+/**
+ * function test(string)
+ * @param {String} string
+ * @returns {Boolean}
+ * @type Boolean
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.test=function(string){return false;};
+/**
+ * property source
+ * @type String
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.source="";
+/**
+ * property global
+ * @type Boolean
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.global=false;
+
+/**
+ * property ignoreCase
+ * @type Boolean
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.ignoreCase=false;
+/**
+ * property multiline
+ * @type Boolean
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.multiline=false;
+/**
+ * property lastIndex
+ * @type Number
+ * @memberOf RegExp
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+RegExp.prototype.lastIndex=0;
+/**
+ * Object Error(message)
+ * @super Object
+ * @constructor
+ * @param {String} message
+ * @memberOf Error
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function Error(message){};
+Error.prototype=new Object();
+/**
+ * property name
+ * @type String
+ * @memberOf Error
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Error.prototype.name="";
+/**
+ * property message
+ * @type String
+ * @memberOf Error
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+Error.prototype.message="";
+/**
+ * Object EvalError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf EvalError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function EvalError(){};
+EvalError.prototype=new Error("");
+/**
+ * Object RangeError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf RangeError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function RangeError(){};
+RangeError.prototype=new Error("");
+/**
+ * Object ReferenceError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf ReferenceError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function ReferenceError(){};
+ReferenceError.prototype=new Error("");
+/**
+ * Object SyntaxError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf SyntaxError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function SyntaxError(){};
+SyntaxError.prototype=new Error("");
+/**
+ * Object TypeError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf TypeError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function TypeError(){};
+TypeError.prototype=new Error("");
+/**
+ * Object URIError()
+ * @super Error
+ * @constructor
+ *
+ * @memberOf URIError
+ * @since Standard ECMA-262 3rd. Edition
+ * @since Level 2 Document Object Model Core Definition.
+ */
+function URIError(){};
+URIError.prototype=new Error("");
+
+//support for debugger keyword
+var debugger = null;
\ No newline at end of file
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js
new file mode 100644
index 0000000..8b680ca
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/libraries/xhr.js
@@ -0,0 +1,104 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ ******************************************************************************
+ *
+ * Based on information from https://developer.mozilla.org/En/XMLHttpRequest
+ * and http://msdn2.microsoft.com/en-us/library/ms533062.aspx
+ **/
+
+/**
+* function createRequest
+* @type XMLHttpRequest
+* @memberOf Window
+*/
+Window.prototype.createRequest= function(){return new XMLHttpRequest();};
+/**
+* Object XMLHttpRequest
+* @type constructor
+*/
+XMLHttpRequest.prototype=new Object();
+function XMLHttpRequest(){};
+
+/**
+ * function onreadystatechange
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.onreadystatechange=function(){};
+/**
+ * property readyState
+ * @type Number
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.readyState=0;
+/**
+ * property responseText
+ * @type String
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.responseText="";
+/**
+ * property responseXML
+ * @type Document
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.responseXML=new Document();
+/**
+ * property status
+ * @type Number
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.status=0;
+/**
+ * property statusText
+ * @type String
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.statusText="";
+/**
+ * function abort()
+ * @memberOf XMLHttpRequest
+ */
+XMLHttpRequest.prototype.abort=function(){};
+/**
+* function getAllResponseHeaders()
+* @type String
+* @memberOf XMLHttpRequest
+*/
+XMLHttpRequest.prototype.getAllResponseHeaders=function(){return "";};
+/**
+* function open(method, url, async, username, password)
+* @param {String} method
+* @param {String} url
+* @param {Boolean} optional async
+* @param {String} optional username
+* @param {String} optional password
+* @memberOf XMLHttpRequest
+*/
+XMLHttpRequest.prototype.open=function(method, url, async, username, password){};
+/**
+* function send(body)
+* @param {Object} body
+* @memberOf XMLHttpRequest
+*/
+XMLHttpRequest.prototype.send=function(body){};
+/**
+* function setRequestHeader(header,value)
+* @param {String} header
+* @param {String} value
+* @memberOf XMLHttpRequest
+*/
+XMLHttpRequest.prototype.setRequestHeader=function(header,value){};
+/**
+* function getAllResponseHeaders()
+* @param {String} header
+* @type String
+* @memberOf XMLHttpRequest
+*/
+XMLHttpRequest.prototype.getResponseHeader=function(header){return "";};
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat
new file mode 100644
index 0000000..d8292dd
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.jsdt.core/variablesAndContainers.dat differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties b/car/GYK/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties
new file mode 100644
index 0000000..6fad0f8
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.sse.core/task-tags.properties
@@ -0,0 +1,3 @@
+#
+#Sun Dec 29 11:19:44 CST 2024
+task-tag-projects-already-scanned=sql
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.validation/dep.index b/car/GYK/.metadata/.plugins/org.eclipse.wst.validation/dep.index
new file mode 100644
index 0000000..499bcc4
Binary files /dev/null and b/car/GYK/.metadata/.plugins/org.eclipse.wst.validation/dep.index differ
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml b/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml
new file mode 100644
index 0000000..37faa16
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/default_catalog.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
diff --git a/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml b/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml
new file mode 100644
index 0000000..7027084
--- /dev/null
+++ b/car/GYK/.metadata/.plugins/org.eclipse.wst.xml.core/system_catalog.xml
@@ -0,0 +1,228 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.metadata/version.ini b/car/GYK/.metadata/version.ini
new file mode 100644
index 0000000..a1a46f7
--- /dev/null
+++ b/car/GYK/.metadata/version.ini
@@ -0,0 +1,3 @@
+#Sun Dec 29 11:15:47 CST 2024
+org.eclipse.core.runtime=2
+org.eclipse.platform=4.22.0.v20211124-1800
diff --git a/car/GYK/.project b/car/GYK/.project
new file mode 100644
index 0000000..d317253
--- /dev/null
+++ b/car/GYK/.project
@@ -0,0 +1,31 @@
+
+
+ GYK
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+ org.eclipse.wst.common.project.facet.core.builder
+
+
+
+
+ org.eclipse.wst.validation.validationbuilder
+
+
+
+
+
+ org.eclipse.jem.workbench.JavaEMFNature
+ org.eclipse.wst.common.modulecore.ModuleCoreNature
+ org.eclipse.wst.common.project.facet.core.nature
+ org.eclipse.jdt.core.javanature
+ org.eclipse.wst.jsdt.core.jsNature
+
+
diff --git a/car/GYK/.settings/.jsdtscope b/car/GYK/.settings/.jsdtscope
new file mode 100644
index 0000000..81672d4
--- /dev/null
+++ b/car/GYK/.settings/.jsdtscope
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.settings/org.eclipse.core.resources.prefs b/car/GYK/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..21cc577
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding//src/main/webapp/loginProcess.jsp=UTF-8
diff --git a/car/GYK/.settings/org.eclipse.jdt.core.prefs b/car/GYK/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..d4540a5
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,10 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=17
+org.eclipse.jdt.core.compiler.compliance=17
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=17
diff --git a/car/GYK/.settings/org.eclipse.wst.common.component b/car/GYK/.settings/org.eclipse.wst.common.component
new file mode 100644
index 0000000..b14634e
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.wst.common.component
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.settings/org.eclipse.wst.common.project.facet.core.xml b/car/GYK/.settings/org.eclipse.wst.common.project.facet.core.xml
new file mode 100644
index 0000000..d65ae0f
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.wst.common.project.facet.core.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.container b/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.container
new file mode 100644
index 0000000..3bd5d0a
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.container
@@ -0,0 +1 @@
+org.eclipse.wst.jsdt.launching.baseBrowserLibrary
\ No newline at end of file
diff --git a/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.name b/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.name
new file mode 100644
index 0000000..05bd71b
--- /dev/null
+++ b/car/GYK/.settings/org.eclipse.wst.jsdt.ui.superType.name
@@ -0,0 +1 @@
+Window
\ No newline at end of file
diff --git a/car/GYK/build/classes/database_util/Customer.class b/car/GYK/build/classes/database_util/Customer.class
new file mode 100644
index 0000000..af10e8c
Binary files /dev/null and b/car/GYK/build/classes/database_util/Customer.class differ
diff --git a/car/GYK/build/classes/database_util/CustomerDAO.class b/car/GYK/build/classes/database_util/CustomerDAO.class
new file mode 100644
index 0000000..1d58354
Binary files /dev/null and b/car/GYK/build/classes/database_util/CustomerDAO.class differ
diff --git a/car/GYK/src/main/java/database_util/Customer.java b/car/GYK/src/main/java/database_util/Customer.java
new file mode 100644
index 0000000..cc92117
--- /dev/null
+++ b/car/GYK/src/main/java/database_util/Customer.java
@@ -0,0 +1,89 @@
+package database_util;
+import java.sql.Date;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
+public class Customer {
+ private int customerID;
+ private String name;
+ private Character gender;
+ private String phone;
+ private String email;
+ private Date registrationDate;
+
+ // ι캯
+ public Customer() {
+ }
+
+ // вĹ캯
+ public Customer(int customerID, String name, Character gender, String phone, String email, Date registrationDate) {
+ this.customerID = customerID;
+ this.name = name;
+ this.gender = gender;
+ this.phone = phone;
+ this.email = email;
+ this.registrationDate = registrationDate;
+ }
+
+ // GetterSetter
+ public int getCustomerID() {
+ return customerID;
+ }
+
+ public void setCustomerID(int customerID) {
+ this.customerID = customerID;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Character getGender() {
+ return gender;
+ }
+
+ public void setGender(Character gender) {
+ this.gender = gender;
+ }
+
+ public String getPhone() {
+ return phone;
+ }
+
+ public void setPhone(String phone) {
+ this.phone = phone;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public Date getRegistrationDate() {
+ return registrationDate;
+ }
+
+ public void setRegistrationDate(Date registrationDate) {
+ this.registrationDate = registrationDate;
+ }
+
+ // toStringڴӡCustomerϢ
+ @Override
+ public String toString() {
+ return "Customer{" +
+ "customerID=" + customerID +
+ ", name='" + name + '\'' +
+ ", gender=" + gender +
+ ", phone='" + phone + '\'' +
+ ", email='" + email + '\'' +
+ ", registrationDate=" + registrationDate +
+ '}';
+ }
+}
\ No newline at end of file
diff --git a/car/GYK/src/main/java/database_util/CustomerDAO.java b/car/GYK/src/main/java/database_util/CustomerDAO.java
new file mode 100644
index 0000000..dfb1b16
--- /dev/null
+++ b/car/GYK/src/main/java/database_util/CustomerDAO.java
@@ -0,0 +1,72 @@
+package database_util;
+
+import java.sql.*;
+import java.util.ArrayList;
+import java.util.List;
+
+
+public class CustomerDAO {
+
+ private static final String URL = "jdbc:mysql://localhost:3306/carrentalmanagement";
+ private static final String USER = "root";
+ private static final String PASSWORD = "123456";
+
+ public static void main(String[] args) {
+ Connection conn = null;
+ Statement stmt = null;
+ try {
+ // ע JDBC
+ Class.forName("com.mysql.cj.jdbc.Driver");
+
+ //
+ System.out.println("Connecting to database...");
+ conn = DriverManager.getConnection(URL, USER, PASSWORD);
+
+ // ִв
+ String sqlInsert = "INSERT INTO Customer (Name, Gender, Phone, Email, RegistrationDate) VALUES ('John Doe', 'M', '1234567890', 'john.doe@example.com', '2024-12-28')";
+ String sqlSelect = "SELECT * FROM Customer";
+ String sqlUpdate = "UPDATE Customer SET Name = 'Jane Doe' WHERE CustomerID = 1";
+ String sqlDelete = "DELETE FROM Customer WHERE CustomerID = 1";
+
+ //
+ stmt = conn.createStatement();
+ int rowsInserted = stmt.executeUpdate(sqlInsert);
+ System.out.println("Inserted rows: " + rowsInserted);
+
+ // ѯ
+ ResultSet rs = stmt.executeQuery(sqlSelect);
+ while (rs.next()) {
+ System.out.println("Customer ID: " + rs.getInt("CustomerID"));
+ System.out.println("Name: " + rs.getString("Name"));
+ // ӡֶ...
+ }
+
+ //
+ int rowsUpdated = stmt.executeUpdate(sqlUpdate);
+ System.out.println("Updated rows: " + rowsUpdated);
+
+ // ɾ
+ int rowsDeleted = stmt.executeUpdate(sqlDelete);
+ System.out.println("Deleted rows: " + rowsDeleted);
+
+ } catch (SQLException se) {
+ // JDBC
+ se.printStackTrace();
+ } catch (Exception e) {
+ // Class.forName
+ e.printStackTrace();
+ } finally {
+ // رԴ
+ try {
+ if (stmt != null) stmt.close();
+ } catch (SQLException se2) {
+ }
+ try {
+ if (conn != null) conn.close();
+ } catch (SQLException se) {
+ se.printStackTrace();
+ }
+ }
+ System.out.println("Goodbye!");
+ }
+}
\ No newline at end of file
diff --git a/car/GYK/src/main/webapp/META-INF/MANIFEST.MF b/car/GYK/src/main/webapp/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..254272e
--- /dev/null
+++ b/car/GYK/src/main/webapp/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
diff --git a/car/GYK/src/main/webapp/WEB-INF/lib/mysql-connector-j-9.0.0.jar b/car/GYK/src/main/webapp/WEB-INF/lib/mysql-connector-j-9.0.0.jar
new file mode 100644
index 0000000..247db10
Binary files /dev/null and b/car/GYK/src/main/webapp/WEB-INF/lib/mysql-connector-j-9.0.0.jar differ
diff --git a/car/GYK/src/main/webapp/WEB-INF/web.xml b/car/GYK/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..a476290
--- /dev/null
+++ b/car/GYK/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,12 @@
+
+
+ GYK
+
+ index.html
+ index.jsp
+ index.htm
+ default.html
+ default.jsp
+ default.htm
+
+
\ No newline at end of file
diff --git a/car/careentalmanagement.txt b/car/careentalmanagement.txt
new file mode 100644
index 0000000..0fedfbe
--- /dev/null
+++ b/car/careentalmanagement.txt
@@ -0,0 +1,661 @@
+-- 创建客户表
+CREATE TABLE Customer (
+ CustomerID SERIAL PRIMARY KEY,
+ Name VARCHAR(255) NOT NULL,
+ Gender CHAR(1),
+ Phone VARCHAR(20),
+ Email VARCHAR(255),
+ RegistrationDate DATE,
+ UNIQUE (Phone, Email) );
+
+-- 创建员工表
+CREATE TABLE Employee (
+ EmployeeID SERIAL PRIMARY KEY,
+ Name VARCHAR(255) NOT NULL,
+ Gender CHAR(1),
+ Phone VARCHAR(20),
+ HireDate DATE
+);
+
+-- 创建车辆表
+CREATE TABLE Vehicle (
+ VehicleID SERIAL PRIMARY KEY,
+ LicensePlate VARCHAR(20) NOT NULL,
+ Model VARCHAR(255),
+ Brand VARCHAR(255),
+ Year INT,
+ Status VarCHAR(30)
+);
+
+-- 创建租赁订单表
+CREATE TABLE RentalOrder (
+ OrderID SERIAL PRIMARY KEY,
+ CustomerID INT REFERENCES Customer(CustomerID),
+ EmployeeID INT REFERENCES Employee(EmployeeID),
+ VehicleID INT REFERENCES Vehicle(VehicleID),
+ StartDate DATE NOT NULL,
+ DueDate DATE NOT NULL,
+ ReturnDate DATE,
+ TotalAmount DECIMAL(10, 2),
+ CHECK (StartDate <= DueDate) );
+
+-- 创建支付记录表
+CREATE TABLE PaymentRecord (
+ PaymentID SERIAL PRIMARY KEY,
+ OrderID INT REFERENCES RentalOrder(OrderID),
+ PaymentMethod VARCHAR(50),
+ PaymentAmount DECIMAL(10, 2),
+ PaymentDate DATE NOT NULL,
+ UNIQUE (OrderID, PaymentDate) );
+
+-- 创建保险表
+CREATE TABLE Insurance (
+ InsuranceID SERIAL PRIMARY KEY,
+ PolicyNumber VARCHAR(20) NOT NULL,
+ InsuranceCompany VARCHAR(255),
+ ValidityStart DATE NOT NULL,
+ ValidityEnd DATE NOT NULL,
+ CHECK (ValidityStart < ValidityEnd) );
+
+-- 创建维修记录表
+CREATE TABLE MaintenanceRecord (
+ MaintenanceID SERIAL PRIMARY KEY,
+ VehicleID INT REFERENCES Vehicle(VehicleID),
+ MaintenanceDate DATE NOT NULL,
+ Description TEXT,
+ Cost DECIMAL(10, 2),
+ CHECK (Cost >= 0) );
+
+-- 创建事故记录表
+CREATE TABLE AccidentRecord (
+ AccidentID SERIAL PRIMARY KEY,
+ VehicleID INT REFERENCES Vehicle(VehicleID),
+ AccidentDate DATE NOT NULL,
+ Description TEXT,
+ DamageCost DECIMAL(10, 2),
+ CHECK (DamageCost >= 0) );
+
+-- 创建供应商表
+CREATE TABLE Supplier (
+ SupplierID SERIAL PRIMARY KEY,
+ Name VARCHAR(255) NOT NULL,
+ Phone VARCHAR(20),
+ Address VARCHAR(255)
+);
+
+-- 创建零部件表
+CREATE TABLE Part (
+ PartID SERIAL PRIMARY KEY,
+ Name VARCHAR(255) NOT NULL,
+ Model VARCHAR(255),
+ Quantity INT NOT NULL,
+SupplierID INT REFERENCES Supplier(SupplierID),
+Price
+);
+
+
+3.5数据库应用系统设计
+3.5.1数据初始化脚本
+(写出insert数据的脚本;每个数据表不少于10条数据。不能胡编,应该结合业务需求寻找有意义的数据。业务数据需包含组内成员信息。)
+-- 插入客户数据
+INSERT INTO Customer (Name, Gender, Phone, Email, RegistrationDate) VALUES
+('小高', 'F', '123-456-7890', 'alice@example.com', '2023-01-10'),
+('LCX', 'M', '987-654-3210', 'bob@example.com', '2023-02-15'),
+('黄油哥', 'M', '555-555-5555', 'charlie@example.com', '2023-03-20'),
+('萝莉音', 'F', '444-333-2222', 'diana@example.com', '2023-04-25'),
+('小硕', 'M', '333-222-1111', 'ethan@example.com', '2023-05-30'),
+('大黄', 'F', '222-111-0000', 'fiona@example.com', '2023-06-30'),
+('牛爷爷', 'M', '111-000-9999', 'george@example.com', '2023-07-20'),
+('胡图图', 'F', '999-888-7777', 'hannah@example.com', '2023-08-25'),
+('张小丽', 'M', '888-777-6666', 'ivan@example.com', '2023-09-10'),
+('胡英俊', 'F', '777-666-5555', 'jenny@example.com', '2023-10-15');
+
+-- 插入员工数据
+INSERT INTO Employee (Name, Gender, Phone, HireDate) VALUES
+('Tom Hardy', 'M', '321-654-9870', '2022-01-01'),
+('Natalie Portman', 'F', '654-321-9876', '2022-02-02'),
+('Leonardo DiCaprio', 'M', '987-654-3210', '2022-03-03'),
+('Keira Knightley', 'F', '654-987-3210', '2022-04-04'),
+('Brad Pitt', 'M', '321-987-6543', '2022-05-05'),
+('Jennifer Lawrence', 'F', '987-654-3219', '2022-06-06'),
+('Edward Norton', 'M', '654-321-9876', '2022-07-07'),
+('Reese Witherspoon', 'F', '321-987-6543', '2022-08-08'),
+('Robert Downey Jr.', 'M', '987-654-3210', '2022-09-09'),
+('Scarlett Johansson', 'F', '654-321-9876', '2022-10-10');
+
+-- 插入车辆数据
+INSERT INTO Vehicle (LicensePlate, Model, Brand, Year, Status) VALUES
+('ABC123', 'Sedan', 'Toyota', 2021, 'Available'),
+('XYZ789', 'SUV', 'Honda', 2020, 'Rented'),
+('LMN456', 'Convertible', 'Ford', 2019, 'Maintenance'),
+('PQR111', 'Hatchback', 'Nissan', 2018, 'Available'),
+('STU222', 'Coupe', 'Chevrolet', 2017, 'Rented'),
+('VWX333', 'Minivan', 'Chrysler', 2016, 'Available'),
+('YZA444', 'Pickup', 'GMC', 2015, 'Maintenance'),
+('BCD555', 'Sedan', 'Hyundai', 2014, 'Rented'),
+('EFG666', 'SUV', 'Subaru', 2013, 'Available'),
+('HIJ777', 'Convertible', 'Audi', 2012, 'Available');
+
+-- 插入租赁订单数据
+INSERT INTO RentalOrder (CustomerID, EmployeeID, VehicleID, StartDate, DueDate, ReturnDate, TotalAmount) VALUES
+(1, 1, 1, '2023-07-01', '2023-07-10', NULL, 300.00),
+(2, 2, 2, '2023-07-15', '2023-07-25', NULL, 450.00),
+(3, 3, 3, '2023-08-01', '2023-08-10', NULL, 600.00),
+(4, 4, 4, '2023-09-01', '2023-09-10', NULL, 750.00),
+(5, 5, 5, '2023-10-01', '2023-10-10', NULL, 900.00),
+(6, 6, 6, '2023-11-01', '2023-11-10', NULL, 1050.00),
+(7, 7, 7, '2023-12-01', '2023-12-10', NULL, 1200.00),
+(8, 8, 8, '2024-01-01', '2024-01-10', NULL, 1350.00),
+(9, 9, 9, '2024-02-01', '2024-02-10', NULL, 1500.00),
+(10, 10, 10, '2024-03-01', '2024-03-10', NULL, 1650.00);
+
+-- 插入支付记录数据
+INSERT INTO PaymentRecord (OrderID, PaymentMethod, PaymentAmount, PaymentDate) VALUES
+(1, 'Credit Card', 100.00, '2023-07-11'),
+(2, 'Debit Card', 200.00, '2023-07-26'),
+ (3, 'PayPal', 150.00, '2023-08-11'),
+(4, 'Cash', 120.00, '2023-09-11'),
+(5, 'Credit Card', 180.00, '2023-10-11'),
+ (6, 'Debit Card', 220.00, '2023-11-11'),
+(7, 'PayPal', 170.00, '2023-12-11'),
+(8, 'Cash', 130.00, '2024-01-11'),
+ (9, 'Credit Card', 190.00, '2024-02-11'),
+ (10, 'Debit Card', 210.00, '2024-03-11');
+-- 插入保险数据
+INSERT INTO Insurance (PolicyNumber, PolicyCompany, ValidityStart, ValidityEnd) VALUES
+('INS1001', 'Insurance Co. A', '2023-01-01', '2024-12-31'),
+('INS1002', 'Insurance Co. B', '2023-02-01', '2024-12-31'),
+('INS1003', 'Insurance Co. C', '2023-03-01', '2024-12-31'),
+('INS1004', 'Insurance Co. D', '2023-04-01', '2024-12-31'),
+('INS1005', 'Insurance Co. E', '2023-05-01', '2024-12-31'),
+('INS1006', 'Insurance Co. F', '2023-06-01', '2024-12-31'),
+('INS1007', 'Insurance Co. G', '2023-07-01', '2024-12-31'),
+('INS1008', 'Insurance Co. H', '2023-08-01', '2024-12-31'),
+('INS1009', 'Insurance Co. I', '2023-09-01', '2024-12-31'),
+('INS1010', 'Insurance Co. J', '2023-10-01', '2024-12-31');
+
+-- 插入维修记录数据
+INSERT INTO MaintenanceRecord (VehicleID, MaintenanceDate, Description, Cost) VALUES
+(1, '2023-01-15', 'Oil change', 49.99),
+(2, '2023-02-20', 'Tire rotation', 29.99),
+(3, '2023-03-10', 'Brake inspection', 39.99),
+(4, '2023-04-05', 'Air filter replacement', 19.99),
+(5, '2023-05-25', 'Engine tune-up', 149.99),
+(6, '2023-06-18', 'Transmission fluid change', 79.99),
+(7, '2023-07-12', 'Battery check', 29.99),
+(8, '2023-08-07', 'Coolant flush', 59.99),
+(9, '2023-09-14', 'Brake pads replacement', 199.99),
+(10, '2023-10-22', 'Headlight replacement', 49.99);
+-- 插入事故记录数据
+INSERT INTO AccidentRecord (VehicleID, AccidentDate, Description, DamageCost) VALUES
+(1, '2023-01-10', 'Minor collision with another vehicle', 500.00),
+(2, '2023-02-15', 'Major accident involving a pedestrian', 1500.00),
+(3, '2023-03-20', 'Rollover due to icy road conditions', 800.00),
+(4, '2023-04-25', 'Fire in the engine bay', 2500.00),
+(5, '2023-05-10', 'Head-on collision with a truck', 3000.00),
+(6, '2023-06-15', 'Side impact with a bicycle', 750.00),
+(7, '2023-07-20', 'Explosion in the fuel tank', 4000.00),
+(8, '2023-08-25', 'Falling tree branch', 100.00),
+(9, '2023-09-10', 'Multi-vehicle collision', 5000.00),
+(10, '2023-10-15', 'Loss of control due to brake failure', 1200.00);
+-- 插入供应商数据
+INSERT INTO Supplier (Name, Phone, Address) VALUES
+('Supplier A', '123-456-7890', '123 Main St, City A'),
+('Supplier B', '234-567-8901', '456 Elm St, City B'),
+('Supplier C', '345-678-9012', '789 Oak St, City C'),
+('Supplier D', '456-789-0123', '101 Pine St, City D'),
+('Supplier E', '567-890-1234', '202 Maple St, City E'),
+('Supplier F', '678-901-2345', '303 Cedar St, City F'),
+('Supplier G', '789-012-3456', '404 Birch St, City G'),
+('Supplier H', '890-123-4567', '505 Spruce St, City H'),
+('Supplier I', '901-234-5678', '606 Willow St, City I'),
+('Supplier J', '012-345-6789', '707 Ash St, City J');
+-- 插入零部件数据
+INSERT INTO Supplier (Name, Phone, Address) VALUES
+('Supplier A', '123-456-7890', '123 Main St, City A'),
+('Supplier B', '234-567-8901', '456 Elm St, City B'),
+('Supplier C', '345-678-9012', '789 Oak St, City C'),
+('Supplier D', '456-789-0123', '101 Pine St, City D'),
+('Supplier E', '567-890-1234', '202 Maple St, City E'),
+('Supplier F', '678-901-2345', '303 Cedar St, City F'),
+('Supplier G', '789-012-3456', '404 Birch St, City G'),
+('Supplier H', '890-123-4567', '505 Spruce St, City H'),
+('Supplier I', '901-234-5678', '606 Willow St, City I'),
+('Supplier J', '012-345-6789', '707 Ash St, City J');
+3.5.2业务查询及查询脚本
+(各类业务查询不少于20个,并写出相应的正确查询脚本;
+查询类型需包含:比较条件、集合比较、范围比较、字符串相似比较、多表连接、嵌套查询、EXISTS查询等,每种类型至少两个业务查询。
+先写清查询需求,再写出查询语句。)
+1. 比较条件查询
+需求1: 查找所有车辆品牌为'Toyota'的车辆。
+SELECT * FROM Vehicle WHERE Brand = 'Toyota';
+需求2: 查找所有车辆型号为'Camry'的车辆。
+SELECT * FROM Vehicle WHERE Model = 'Camry';
+
+2. 集合比较查询
+需求3: 查找所有车辆品牌为'Toyota'或'Honda'的车辆。
+SELECT * FROM Vehicle WHERE Brand IN ('Toyota', 'Honda');
+
+需求4: 查找所有车辆年份为2018年或2020年的车辆。
+
+SELECT * FROM Vehicle WHERE Year IN (2018, 2020);
+3. 范围比较查询
+需求5: 查找所有价格在50美元以上的车辆。
+SELECT * FROM Vehicle WHERE Price > 50;
+需求6: 查找所有价格在50美元到100美元之间的车辆。
+SELECT * FROM Vehicle WHERE Price BETWEEN 50 AND 100;
+4. 字符串相似比较查询
+需求7: 查找所有车辆品牌以'T'开头的车辆。
+
+SELECT * FROM Vehicle WHERE Brand LIKE 'T%';
+需求8: 查找所有车辆型号包含'Y'的车辆。
+
+SELECT * FROM Vehicle WHERE Model LIKE '%Y%';
+5. 多表连接查询
+假设有一个订单表RentalOrder,包含字段VehicleID和OrderDate。
+需求9: 查找所有已租赁的车辆信息。
+SELECT DISTINCT v.*
+FROM Vehicle v
+JOIN rentalorder ro ON v.VehicleID = ro.VehicleID;
+需求10: 查找所有未被租赁的车辆信息。
+SELECT v.*
+FROM Vehicle v
+LEFT JOIN RentalOrder ro ON v.VehicleID = ro.VehicleID
+WHERE ro.VehicleID IS NULL;
+6. 嵌套查询
+需求11: 查找所有租赁次数超过3次的车辆信息。
+SELECT * FROM Vehicle v
+WHERE (SELECT COUNT(*) FROM RentalOrders ro WHERE ro.VehicleID = v.VehicleID) > 3;
+需求12: 查找所有租赁次数少于2次的车辆信息
+SELECT * FROM Vehicle v
+WHERE (SELECT COUNT(*) FROM RentalOrders ro WHERE ro.VehicleID = v.VehicleID) < 2;
+7. EXISTS查询
+需求13: 查找所有有租赁记录的车辆。
+
+SELECT * FROM Vehicle v
+WHERE EXISTS (SELECT 1 FROM RentalOrders ro WHERE ro.VehicleID = v.VehicleID);
+
+需求14: 查找所有没有租赁记录的车辆。
+SELECT * FROM Vehicle v
+WHERE NOT EXISTS (SELECT 1 FROM RentalOrders ro WHERE ro.VehicleID = v.VehicleID);
+8. 聚合函数查询
+需求15: 查找每个品牌的车辆数量。
+SELECT Brand, COUNT(*) AS NumberOfVehicles
+FROM Vehicle
+GROUP BY Brand;
+需求16: 查找每个品牌的车辆总出租次数。
+SELECT v.Brand, COUNT(ro.OrderID) AS TotalRentals
+FROM Vehicle v
+JOIN RentalOrder ro ON v.VehicleID = ro.VehicleID
+GROUP BY v.Brand;
+9. 子查询与HAVING子句结合使用
+需求17: 查找拥有超过3辆车的品牌。
+
+SELECT Brand, COUNT(*) AS NumberOfVehicles
+FROM Vehicle
+GROUP BY Brand
+HAVING COUNT(*) > 3;
+需求18: 查找拥有少于2辆车的品牌。
+
+SELECT Brand, COUNT(*) AS NumberOfVehicles
+FROM Vehicle
+GROUP BY Brand
+HAVING COUNT(*) < 2;
+
+10. CASE语句与条件表达式查询
+需求19: 根据车辆年份显示是否为新车辆。
+SELECT Model, Year,
+ CASE WHEN Year >= YEAR(CURDATE()) - 5 THEN 'New' ELSE 'Old' END AS VehicleStatus
+FROM Vehicle;
+
+需求20: 根据车辆品牌显示是否为热门品牌
+SELECT Model, Brand,
+ CASE WHEN Brand IN ('Toyota', 'Honda', 'Ford') THEN 'Popular' ELSE 'Not Popular' END AS BrandPopularity
+FROM Vehicle;
+3.5.3 数据更新及脚本
+(分别写出至少10个update、delete的更新需求以及更新脚本。)
+1. 更新客户信息
+需求: 将客户'LCX'的邮箱地址更新为'LCX.258@qq.com'。
+UPDATE Customer
+SET Email = 'LCX.258@qq.com'
+WHERE Name = 'LCX';
+
+2. 更新员工信息
+需求: 将员工'Tom Hardy'的电话号码更新为'999-888-7777'。
+UPDATE Employee
+SET Phone = '999-888-7777'
+WHERE Name = 'Tom Hardy';
+
+3. 更新车辆信息
+需求: 将车辆'ABC123'的状态更新为'Rented'。
+UPDATE Vehicle
+SET Status = 'Rented'
+WHERE LicensePlate = 'ABC123';
+
+4. 更新租赁订单信息
+需求: 将订单ID为1的归还日期设置为'2023-07-15'。
+
+UPDATE RentalOrder
+SET ReturnDate = '2023-07-15'
+WHERE OrderID = 1;
+5. 更新支付记录信息
+需求: 将支付记录ID为1的支付金额更新为150.00。
+UPDATE PaymentRecord
+SET PaymentAmount = 150.00
+WHERE OrderID = 1;
+6. 更新保险信息
+需求: 将保单号为'INS1001'的有效期结束日期延长至'2025-12-31'。
+UPDATE Insurance
+SET ValidityEnd = '2025-12-31'
+WHERE PolicyNumber = 'INS1001';
+7. 更新维修记录信息
+需求: 将车辆ID为1的最近一次维修描述更新为'Engine repair'。
+UPDATE MaintenanceRecord
+SET Description = 'Engine repair'
+WHERE VehicleID = 1 AND MaintenanceDate = (SELECT MAX(MaintenanceDate) FROM MaintenanceRecord WHERE VehicleID = 1);
+8. 更新事故记录信息
+需求: 将车辆ID为2的最近一次事故描述更新为'Minor rear-end collision'。
+UPDATE AccidentRecord
+SET Description = 'Minor rear-end collision'
+WHERE VehicleID = 2 AND AccidentDate = (SELECT MAX(AccidentDate) FROM AccidentRecord WHERE VehicleID = 2);
+9. 更新供应商信息
+需求: 将供应商'Supplier A'的电话更新为'000-111-2222'。
+UPDATE Supplier
+SET Phone = '000-111-2222'
+WHERE Name = 'Supplier A';
+10. 更新零部件信息
+需求: 将所有零部件的价格提高10%。
+UPDATE Parts
+SET Price = Price * 1.10;
+删除操作示例:
+1. 删除客户数据
+需求: 删除客户'Alice Johnson'的记录。
+DELETE FROM Customer
+WHERE Name = 'Alice Johnson';
+2. 删除员工数据
+需求: 删除员工'Tom Hardy'的记录。
+DELETE FROM Employee
+WHERE Name = 'Tom Hardy';
+3. 删除车辆数据
+需求: 删除车辆'ABC123'的记录。
+
+DELETE FROM Vehicle
+WHERE LicensePlate = 'ABC123';
+4. 删除租赁订单数据
+需求: 删除订单ID为1的记录。
+
+DELETE FROM RentalOrder
+WHERE OrderID = 1;
+5. 删除支付记录数据
+需求: 删除支付记录ID为1的记录。
+
+DELETE FROM PaymentRecord
+WHERE OrderID = 1;
+6. 删除保险数据
+需求: 删除保单号为'INS1001'的记录。
+
+DELETE FROM Insurance
+WHERE PolicyNumber = 'INS1001';
+
+7. 删除维修记录数据
+需求: 删除车辆ID为1的所有维修记录。
+DELETE FROM MaintenanceRecord
+WHERE VehicleID = 1;
+
+8. 删除事故记录数据
+需求: 删除车辆ID为2的所有事故记录。
+DELETE FROM AccidentRecord
+WHERE VehicleID = 2;
+9. 删除供应商数据
+需求: 删除供应商'Supplier A'的记录。
+DELETE FROM Supplier
+WHERE Name = 'Supplier A';
+
+
+10. 删除零部件数据
+需求: 删除所有零部件记录。
+ DELETE FROM Parts;
+
+
+
+3.5.4视图创建脚本;
+(根据需求自定义视图。至少定义不少于5个的视图。)
+视图1: 客户租赁订单视图
+需求: 查看每个客户的租赁订单信息。
+CREATE VIEW CustomerRentalOrders AS
+SELECT c.CustomerID, c.Name AS CustomerName, r.OrderID, r.StartDate, r.DueDate, v.LicensePlate, v.Model
+FROM Customer c
+JOIN RentalOrder r ON c.CustomerID = r.CustomerID
+JOIN Vehicle v ON r.VehicleID = v.VehicleID;
+
+视图2: 客户支付记录视图
+需求: 查看每个客户的支付记录信息。
+CREATE VIEW CustomerPaymentRecords AS
+SELECT c.CustomerID, c.Name AS CustomerName, p.OrderID, p.PaymentDate, p.PaymentAmount
+FROM Customer c
+JOIN RentalOrder r ON c.CustomerID = r.CustomerID
+JOIN PaymentRecord p ON r.OrderID = p.OrderID;
+
+视图3: 供应商零部件视图
+需求: 查看每个供应商提供的零部件信息。
+CREATE VIEW SupplierParts AS
+SELECT s.SupplierID, s.Name AS SupplierName, p.PartID, p.Name AS PartName, p.Model, p.Quantity, p.Price
+FROM Supplier s
+JOIN Part p ON s.SupplierID = p.SupplierID;
+
+视图4: 客户租赁订单总金额视图
+需求: 查看每个客户的租赁订单总金额。
+
+CREATE VIEW CustomerTotalRentalAmount AS
+SELECT c.CustomerID, c.Name AS CustomerName, SUM(r.TotalAmount) AS TotalAmount
+FROM Customer c
+JOIN RentalOrder r ON c.CustomerID = r.CustomerID
+GROUP BY c.CustomerID, c.Name;
+视图5: 车辆事故记录视图
+需求: 查看每辆车的事故记录信息。
+CREATE VIEW VehicleAccidentRecords AS
+SELECT v.VehicleID, v.LicensePlate, v.Model, a.AccidentDate, a.Description, a.DamageCost
+FROM Vehicle v
+JOIN AccidentRecord a ON v.VehicleID = a.VehicleID;
+视图6: 客户租赁订单数量视图
+需求: 查看每个客户的租赁订单数量。
+CREATE VIEW CustomerRentalOrderCount AS
+SELECT c.CustomerID, c.Name AS CustomerName, COUNT(r.OrderID) AS OrderCount
+FROM Customer c
+JOIN RentalOrder r ON c.CustomerID = r.CustomerID
+GROUP BY c.CustomerID, c.Name;
+3.5.5索引创建脚本;
+(根据需求自定义索引。至少定义不少于10个索引。建立索引应与业务查询联系。)
+索引1: 客户表的姓名索引
+需求: 快速查找客户信息。
+CREATE INDEX idx_customer_name ON Customer(Name);
+索引2: 员工表的姓名索引
+需求: 快速查找员工信息。
+CREATE INDEX idx_employee_name ON Employee(Name);
+索引3: 车辆表的车牌号索引
+需求: 快速查找车辆信息。
+CREATE INDEX idx_vehicle_license_plate ON Vehicle(LicensePlate);
+索引4: 租赁订单表的客户ID和开始日期索引
+需求: 快速查找特定客户的租赁订单。
+CREATE INDEX idx_rentalorder_customerid_startdate ON RentalOrder(CustomerID, StartDate);
+索引5: 支付记录表的订单ID和支付日期索引
+需求: 快速查找特定订单的支付记录。
+CREATE INDEX idx_paymentrecord_orderid_paymentdate ON PaymentRecord(OrderID, PaymentDate);
+索引6: 保险表的政策号码索引
+需求: 快速查找保险信息。
+
+CREATE INDEX idx_insurance_policynumber ON Insurance(PolicyNumber);
+索引7: 维修记录表的车辆ID和维修日期索引
+需求: 快速查找特定车辆的维修记录。
+
+CREATE INDEX idx_maintenancerecord_vehicleid_maintenancedate ON MaintenanceRecord(VehicleID, MaintenanceDate);
+索引8: 事故记录表的车辆ID和事故日期索引
+需求: 快速查找特定车辆的事故记录。
+
+CREATE INDEX idx_accidentrecord_vehicleid_accidentdate ON AccidentRecord(VehicleID, AccidentDate);
+索引9: 供应商表的名称索引
+需求: 快速查找供应商信息。
+CREATE INDEX idx_supplier_name ON Supplier(Name);
+索引10: 维修记录表的维护费用和维修日期索引
+需求: 快速查找特定费用范围的维修记录。
+
+CREATE INDEX idx_maintenancerecord_cost_maintenancedate ON MaintenanceRecord(Cost, MaintenanceDate);
+
+3.5.6存储过程创建脚本
+(自定义存储过程。至少定义不少于5个存储过程。)
+-- 存储过程:添加新客户
+DELIMITER $$
+CREATE PROCEDURE AddNewCustomer(
+ IN p_Name VARCHAR(255),
+ IN p_Gender CHAR(1),
+ IN p_Phone VARCHAR(20),
+ IN p_Email VARCHAR(255),
+ IN p_RegistrationDate DATE
+)
+BEGIN
+ INSERT INTO Customer (Name, Gender, Phone, Email, RegistrationDate)
+ VALUES (p_Name, p_Gender, p_Phone, p_Email, p_RegistrationDate);
+END$$
+DELIMITER ;
+-- 存储过程:更新车辆状态
+DELIMITER $$
+CREATE PROCEDURE UpdateVehicleStatus(
+ IN p_VehicleID INT,
+ IN p_Status VARCHAR(30)
+)
+BEGIN
+ UPDATE Vehicle
+ SET Status = p_Status
+ WHERE VehicleID = p_VehicleID;
+END$$
+DELIMITER ;
+-- 存储过程:记录支付信息
+DELIMITER $$
+CREATE PROCEDURE RecordPayment(
+ IN p_OrderID INT,
+ IN p_PaymentMethod VARCHAR(50),
+ IN p_PaymentAmount DECIMAL(10, 2),
+ IN p_PaymentDate DATE
+)
+BEGIN
+ INSERT INTO PaymentRecord (OrderID, PaymentMethod, PaymentAmount, PaymentDate)
+ VALUES (p_OrderID, p_PaymentMethod, p_PaymentAmount, p_PaymentDate);
+END$$
+DELIMITER ;
+-- 存储过程:生成保险单
+DELIMITER $$
+CREATE PROCEDURE CreateInsurancePolicy(
+ IN p_PolicyNumber VARCHAR(20),
+ IN p_InsuranceCompany VARCHAR(255),
+ IN p_ValidityStart DATE,
+ IN p_ValidityEnd DATE
+)
+BEGIN
+ INSERT INTO Insurance (PolicyNumber, InsuranceCompany, ValidityStart, ValidityEnd)
+ VALUES (p_PolicyNumber, p_InsuranceCompany, p_ValidityStart, p_ValidityEnd);
+END$$
+DELIMITER ;
+
+-- 存储过程:处理事故记录
+DELIMITER $$
+CREATE PROCEDURE RecordAccident(
+ IN p_VehicleID INT,
+ IN p_AccidentDate DATE,
+ IN p_Description TEXT,
+ IN p_DamageCost DECIMAL(10, 2)
+)
+BEGIN
+ INSERT INTO AccidentRecord (VehicleID, AccidentDate, Description, DamageCost)
+ VALUES (p_VehicleID, p_AccidentDate, p_Description, p_DamageCost);
+END$$
+DELIMITER ;
+3.5.7触发器创建脚本
+(自定义触发器。至少定义不少于5个触发器。)
+-- 触发器:在插入租赁订单时自动更新车辆状态为“Rented”
+DELIMITER $$
+CREATE TRIGGER UpdateVehicleStatusOnRental
+AFTER INSERT ON RentalOrder
+FOR EACH ROW
+BEGIN
+ UPDATE Vehicle
+ SET Status = 'Rented'
+ WHERE VehicleID = NEW.VehicleID;
+END$$
+DELIMITER ;
+-- 触发器:在更新租赁订单的返回日期时自动更新车辆状态为“Available”
+DEDELIMITER $$
+CREATE TRIGGER UpdateVehicleStatusOnReturn
+AFTER UPDATE ON RentalOrder
+FOR EACH ROW
+BEGIN
+ IF OLD.ReturnDate IS NULL AND NEW.ReturnDate IS NOT NULL THEN
+ UPDATE Vehicle
+ SET Status = 'Available'
+ WHERE VehicleID = NEW.VehicleID;
+ END IF;
+END$$
+DELIMITER ;
+-- 触发器:在插入支付记录时自动更新租赁订单的总金额
+DELIMITER //
+CREATE TRIGGER trg_update_total_amount_on_payment
+AFTER INSERT ON PaymentRecord
+FOR EACH ROW
+BEGIN
+ UPDATE RentalOrder
+ SET TotalAmount = TotalAmount + NEW.PaymentAmount
+ WHERE OrderID = NEW.OrderID;
+END//
+DELIMITER ;
+-- 触发器:在插入保险单时检查有效期是否有效
+DELIMITER //
+CREATE TRIGGER trg_check_insurance_validity
+BEFORE INSERT ON Insurance
+FOR EACH ROW
+BEGIN
+ IF NEW.ValidityStart >= NEW.ValidityEnd THEN
+ SIGNAL SQLSTATE '45000'
+ SET MESSAGE_TEXT = 'Insurance validity period is invalid';
+ END IF;
+END//
+DELIMITER ;
+-- 触发器:在插入事故记录时自动更新车辆状态为“Repair”IMITER //
+DELIMITER //
+CREATE TRIGGER trg_update_vehicle_status_on_accident
+AFTER INSERT ON AccidentRecord
+FOR EACH ROW
+BEGIN
+ UPDATE Vehicle
+ SET Status = 'Repair'
+ WHERE VehicleID = NEW.VehicleID;
+END//
+DELIMITER ;
+3.5.8安全方案设计及实现脚本
+(实现合理的权限设计与授权。用户至少3类。)
+-- 创建角色
+CREATE ROLE admin;
+CREATE ROLE employee;
+CREATE ROLE customer;
+
+-- 创建用户并分配角色
+CREATE USER 'admin_user'@'localhost' IDENTIFIED BY 'admin_password';
+GRANT admin TO 'admin_user'@'localhost';
+
+CREATE USER 'employee_user'@'localhost' IDENTIFIED BY 'employee_password';
+GRANT employee TO 'employee_user'@'localhost';
+
+CREATE USER 'customer_user'@'localhost' IDENTIFIED BY 'customer_password';
+GRANT customer TO 'customer_user'@'localhost';
+
+-- 为管理员分配所有表的所有权限
+GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'localhost';
+
+-- 为员工分配对RentalOrder、Vehicle、Customer表的SELECT权限
+GRANT SELECT ON RentalOrder TO 'employee_user'@'localhost';
+GRANT SELECT ON Vehicle TO 'employee_user'@'localhost';
+GRANT SELECT ON Customer TO 'employee_user'@'localhost';
+
+-- 为顾客分配对自己信息的UPDATE权限
+GRANT UPDATE (Name, Gender, Phone, Email) ON Customer TO 'customer_user'@'localhost';
+
+-- 刷新权限
+FLUSH PRIVILEGES;
\ No newline at end of file
diff --git a/car/carrentalmanagement.sql b/car/carrentalmanagement.sql
new file mode 100644
index 0000000..6b39c7c
--- /dev/null
+++ b/car/carrentalmanagement.sql
@@ -0,0 +1,542 @@
+/*
+ Navicat Premium Dump SQL
+
+ Source Server : shiyan6
+ Source Server Type : MySQL
+ Source Server Version : 80040 (8.0.40)
+ Source Host : localhost:3306
+ Source Schema : carrentalmanagement
+
+ Target Server Type : MySQL
+ Target Server Version : 80040 (8.0.40)
+ File Encoding : 65001
+
+ Date: 29/12/2024 17:14:00
+*/
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for accidentrecord
+-- ----------------------------
+DROP TABLE IF EXISTS `accidentrecord`;
+CREATE TABLE `accidentrecord` (
+ `AccidentID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `VehicleID` int NULL DEFAULT NULL,
+ `AccidentDate` date NOT NULL,
+ `Description` text CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL,
+ `DamageCost` decimal(10, 2) NULL DEFAULT NULL,
+ PRIMARY KEY (`AccidentID`) USING BTREE,
+ UNIQUE INDEX `AccidentID`(`AccidentID` ASC) USING BTREE,
+ INDEX `idx_accidentrecord_vehicleid_accidentdate`(`VehicleID` ASC, `AccidentDate` ASC) USING BTREE,
+ CONSTRAINT `accidentrecord_chk_1` CHECK (`DamageCost` >= 0)
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of accidentrecord
+-- ----------------------------
+INSERT INTO `accidentrecord` VALUES (1, 1, '2023-01-10', 'Minor collision with another vehicle', 500.00);
+INSERT INTO `accidentrecord` VALUES (2, 2, '2023-02-15', 'Major accident involving a pedestrian', 1500.00);
+INSERT INTO `accidentrecord` VALUES (3, 3, '2023-03-20', 'Rollover due to icy road conditions', 800.00);
+INSERT INTO `accidentrecord` VALUES (4, 4, '2023-04-25', 'Fire in the engine bay', 2500.00);
+INSERT INTO `accidentrecord` VALUES (5, 5, '2023-05-10', 'Head-on collision with a truck', 3000.00);
+INSERT INTO `accidentrecord` VALUES (6, 6, '2023-06-15', 'Side impact with a bicycle', 750.00);
+INSERT INTO `accidentrecord` VALUES (7, 7, '2023-07-20', 'Explosion in the fuel tank', 4000.00);
+INSERT INTO `accidentrecord` VALUES (8, 8, '2023-08-25', 'Falling tree branch', 100.00);
+INSERT INTO `accidentrecord` VALUES (9, 9, '2023-09-10', 'Multi-vehicle collision', 5000.00);
+INSERT INTO `accidentrecord` VALUES (10, 10, '2023-10-15', 'Loss of control due to brake failure', 1200.00);
+
+-- ----------------------------
+-- Table structure for customer
+-- ----------------------------
+DROP TABLE IF EXISTS `customer`;
+CREATE TABLE `customer` (
+ `CustomerID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `Gender` char(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Phone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `RegistrationDate` date NULL DEFAULT NULL,
+ PRIMARY KEY (`CustomerID`) USING BTREE,
+ UNIQUE INDEX `CustomerID`(`CustomerID` ASC) USING BTREE,
+ UNIQUE INDEX `Phone`(`Phone` ASC, `Email` ASC) USING BTREE,
+ INDEX `idx_customer_name`(`Name` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of customer
+-- ----------------------------
+INSERT INTO `customer` VALUES (2, 'LCX', 'M', '987-654-3210', 'LCX.258@qq.com', '2023-02-15');
+INSERT INTO `customer` VALUES (3, '黄油哥', 'M', '555-555-5555', 'charlie@example.com', '2023-03-20');
+INSERT INTO `customer` VALUES (4, '萝莉音', 'F', '444-333-2222', 'diana@example.com', '2023-04-25');
+INSERT INTO `customer` VALUES (5, '小硕', 'M', '333-222-1111', 'ethan@example.com', '2023-05-30');
+INSERT INTO `customer` VALUES (6, '大黄', 'F', '222-111-0000', 'fiona@example.com', '2023-06-30');
+INSERT INTO `customer` VALUES (7, '牛爷爷', 'M', '111-000-9999', 'george@example.com', '2023-07-20');
+INSERT INTO `customer` VALUES (8, '胡图图', 'F', '999-888-7777', 'hannah@example.com', '2023-08-25');
+INSERT INTO `customer` VALUES (9, '张小丽', 'M', '888-777-6666', 'ivan@example.com', '2023-09-10');
+INSERT INTO `customer` VALUES (10, '胡英俊', 'F', '777-666-5555', 'jenny@example.com', '2023-10-15');
+INSERT INTO `customer` VALUES (16, 'John Doe', 'M', '1234567890', 'john.doe@example.com', '2024-12-28');
+
+-- ----------------------------
+-- Table structure for employee
+-- ----------------------------
+DROP TABLE IF EXISTS `employee`;
+CREATE TABLE `employee` (
+ `EmployeeID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `Gender` char(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Phone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `HireDate` date NULL DEFAULT NULL,
+ PRIMARY KEY (`EmployeeID`) USING BTREE,
+ UNIQUE INDEX `EmployeeID`(`EmployeeID` ASC) USING BTREE,
+ INDEX `idx_employee_name`(`Name` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of employee
+-- ----------------------------
+INSERT INTO `employee` VALUES (1, 'Tom Hardy', 'M', '321-654-9870', '2022-01-01');
+INSERT INTO `employee` VALUES (2, 'Natalie Portman', 'F', '654-321-9876', '2022-02-02');
+INSERT INTO `employee` VALUES (3, 'Leonardo DiCaprio', 'M', '987-654-3210', '2022-03-03');
+INSERT INTO `employee` VALUES (4, 'Keira Knightley', 'F', '654-987-3210', '2022-04-04');
+INSERT INTO `employee` VALUES (5, 'Brad Pitt', 'M', '321-987-6543', '2022-05-05');
+INSERT INTO `employee` VALUES (6, 'Jennifer Lawrence', 'F', '987-654-3219', '2022-06-06');
+INSERT INTO `employee` VALUES (7, 'Edward Norton', 'M', '654-321-9876', '2022-07-07');
+INSERT INTO `employee` VALUES (8, 'Reese Witherspoon', 'F', '321-987-6543', '2022-08-08');
+INSERT INTO `employee` VALUES (9, 'Robert Downey Jr.', 'M', '987-654-3210', '2022-09-09');
+INSERT INTO `employee` VALUES (10, 'Scarlett Johansson', 'F', '654-321-9876', '2022-10-10');
+
+-- ----------------------------
+-- Table structure for insurance
+-- ----------------------------
+DROP TABLE IF EXISTS `insurance`;
+CREATE TABLE `insurance` (
+ `InsuranceID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `PolicyNumber` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `InsuranceCompany` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `ValidityStart` date NOT NULL,
+ `ValidityEnd` date NOT NULL,
+ PRIMARY KEY (`InsuranceID`) USING BTREE,
+ UNIQUE INDEX `InsuranceID`(`InsuranceID` ASC) USING BTREE,
+ INDEX `idx_insurance_policynumber`(`PolicyNumber` ASC) USING BTREE,
+ CONSTRAINT `insurance_chk_1` CHECK (`ValidityStart` < `ValidityEnd`)
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of insurance
+-- ----------------------------
+INSERT INTO `insurance` VALUES (1, 'POL123456789', 'Company A', '2023-01-01', '2024-01-01');
+INSERT INTO `insurance` VALUES (2, 'POL987654321', 'Company B', '2023-02-01', '2024-02-01');
+INSERT INTO `insurance` VALUES (3, 'POL112233445', 'Company C', '2023-03-01', '2024-03-01');
+INSERT INTO `insurance` VALUES (4, 'POL556677889', 'Company D', '2023-04-01', '2024-04-01');
+INSERT INTO `insurance` VALUES (5, 'POL998877665', 'Company E', '2023-05-01', '2024-05-01');
+INSERT INTO `insurance` VALUES (6, 'POL123987456', 'Company F', '2023-06-01', '2024-06-01');
+INSERT INTO `insurance` VALUES (7, 'POL654321987', 'Company G', '2023-07-01', '2024-07-01');
+INSERT INTO `insurance` VALUES (8, 'POL321654987', 'Company H', '2023-08-01', '2024-08-01');
+INSERT INTO `insurance` VALUES (9, 'POL789456123', 'Company I', '2023-09-01', '2024-09-01');
+INSERT INTO `insurance` VALUES (10, 'POL333444555', 'Company J', '2023-10-01', '2024-10-01');
+
+-- ----------------------------
+-- Table structure for maintenancerecord
+-- ----------------------------
+DROP TABLE IF EXISTS `maintenancerecord`;
+CREATE TABLE `maintenancerecord` (
+ `MaintenanceID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `VehicleID` int NULL DEFAULT NULL,
+ `MaintenanceDate` date NOT NULL,
+ `Description` text CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL,
+ `Cost` decimal(10, 2) NULL DEFAULT NULL,
+ PRIMARY KEY (`MaintenanceID`) USING BTREE,
+ UNIQUE INDEX `MaintenanceID`(`MaintenanceID` ASC) USING BTREE,
+ INDEX `idx_maintenancerecord_vehicleid_maintenancedate`(`VehicleID` ASC, `MaintenanceDate` ASC) USING BTREE,
+ INDEX `idx_maintenancerecord_cost_maintenancedate`(`Cost` ASC, `MaintenanceDate` ASC) USING BTREE,
+ CONSTRAINT `maintenancerecord_chk_1` CHECK (`Cost` >= 0)
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of maintenancerecord
+-- ----------------------------
+INSERT INTO `maintenancerecord` VALUES (1, 1, '2023-01-15', 'Oil change', 49.99);
+INSERT INTO `maintenancerecord` VALUES (2, 2, '2023-02-20', 'Tire rotation', 29.99);
+INSERT INTO `maintenancerecord` VALUES (3, 3, '2023-03-10', 'Brake inspection', 39.99);
+INSERT INTO `maintenancerecord` VALUES (4, 4, '2023-04-05', 'Air filter replacement', 19.99);
+INSERT INTO `maintenancerecord` VALUES (5, 5, '2023-05-25', 'Engine tune-up', 149.99);
+INSERT INTO `maintenancerecord` VALUES (6, 6, '2023-06-18', 'Transmission fluid change', 79.99);
+INSERT INTO `maintenancerecord` VALUES (7, 7, '2023-07-12', 'Battery check', 29.99);
+INSERT INTO `maintenancerecord` VALUES (8, 8, '2023-08-07', 'Coolant flush', 59.99);
+INSERT INTO `maintenancerecord` VALUES (9, 9, '2023-09-14', 'Brake pads replacement', 199.99);
+INSERT INTO `maintenancerecord` VALUES (10, 10, '2023-10-22', 'Headlight replacement', 49.99);
+
+-- ----------------------------
+-- Table structure for part
+-- ----------------------------
+DROP TABLE IF EXISTS `part`;
+CREATE TABLE `part` (
+ `PartID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `Model` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Quantity` int NOT NULL,
+ `SupplierID` int NULL DEFAULT NULL,
+ `Price` decimal(10, 2) NULL DEFAULT NULL,
+ PRIMARY KEY (`PartID`) USING BTREE,
+ UNIQUE INDEX `PartID`(`PartID` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of part
+-- ----------------------------
+INSERT INTO `part` VALUES (1, 'Part A', 'Model X', 100, 1, NULL);
+INSERT INTO `part` VALUES (2, 'Part B', 'Model Y', 200, 2, NULL);
+INSERT INTO `part` VALUES (3, 'Part C', 'Model Z', 300, 3, NULL);
+INSERT INTO `part` VALUES (4, 'Part D', 'Model W', 400, 4, NULL);
+INSERT INTO `part` VALUES (5, 'Part E', 'Model V', 500, 5, NULL);
+INSERT INTO `part` VALUES (6, 'Part F', 'Model U', 600, 6, NULL);
+INSERT INTO `part` VALUES (7, 'Part G', 'Model T', 700, 7, NULL);
+INSERT INTO `part` VALUES (8, 'Part H', 'Model S', 800, 8, NULL);
+INSERT INTO `part` VALUES (9, 'Part I', 'Model R', 900, 9, NULL);
+INSERT INTO `part` VALUES (10, 'Part J', 'Model Q', 1000, 10, NULL);
+
+-- ----------------------------
+-- Table structure for paymentrecord
+-- ----------------------------
+DROP TABLE IF EXISTS `paymentrecord`;
+CREATE TABLE `paymentrecord` (
+ `PaymentID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `OrderID` int NULL DEFAULT NULL,
+ `PaymentMethod` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `PaymentAmount` decimal(10, 2) NULL DEFAULT NULL,
+ `PaymentDate` date NOT NULL,
+ PRIMARY KEY (`PaymentID`) USING BTREE,
+ UNIQUE INDEX `PaymentID`(`PaymentID` ASC) USING BTREE,
+ UNIQUE INDEX `OrderID`(`OrderID` ASC, `PaymentDate` ASC) USING BTREE,
+ INDEX `idx_paymentrecord_orderid_paymentdate`(`OrderID` ASC, `PaymentDate` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of paymentrecord
+-- ----------------------------
+INSERT INTO `paymentrecord` VALUES (1, 1, 'Credit Card', 100.00, '2023-07-11');
+INSERT INTO `paymentrecord` VALUES (2, 2, 'Debit Card', 200.00, '2023-07-26');
+INSERT INTO `paymentrecord` VALUES (3, 3, 'PayPal', 150.00, '2023-08-11');
+INSERT INTO `paymentrecord` VALUES (4, 4, 'Cash', 120.00, '2023-09-11');
+INSERT INTO `paymentrecord` VALUES (5, 5, 'Credit Card', 180.00, '2023-10-11');
+INSERT INTO `paymentrecord` VALUES (6, 6, 'Debit Card', 220.00, '2023-11-11');
+INSERT INTO `paymentrecord` VALUES (7, 7, 'PayPal', 170.00, '2023-12-11');
+INSERT INTO `paymentrecord` VALUES (8, 8, 'Cash', 130.00, '2024-01-11');
+INSERT INTO `paymentrecord` VALUES (9, 9, 'Credit Card', 190.00, '2024-02-11');
+INSERT INTO `paymentrecord` VALUES (10, 10, 'Debit Card', 210.00, '2024-03-11');
+
+-- ----------------------------
+-- Table structure for rentalorder
+-- ----------------------------
+DROP TABLE IF EXISTS `rentalorder`;
+CREATE TABLE `rentalorder` (
+ `OrderID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `CustomerID` int NULL DEFAULT NULL,
+ `EmployeeID` int NULL DEFAULT NULL,
+ `VehicleID` int NULL DEFAULT NULL,
+ `StartDate` date NOT NULL,
+ `DueDate` date NOT NULL,
+ `ReturnDate` date NULL DEFAULT NULL,
+ `TotalAmount` decimal(10, 2) NULL DEFAULT NULL,
+ PRIMARY KEY (`OrderID`) USING BTREE,
+ UNIQUE INDEX `OrderID`(`OrderID` ASC) USING BTREE,
+ INDEX `idx_rentalorder_customerid_startdate`(`CustomerID` ASC, `StartDate` ASC) USING BTREE,
+ CONSTRAINT `rentalorder_chk_1` CHECK (`StartDate` <= `DueDate`)
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of rentalorder
+-- ----------------------------
+INSERT INTO `rentalorder` VALUES (1, 1, 1, 1, '2023-07-01', '2023-07-10', NULL, 300.00);
+INSERT INTO `rentalorder` VALUES (2, 2, 2, 2, '2023-07-15', '2023-07-25', NULL, 450.00);
+INSERT INTO `rentalorder` VALUES (3, 3, 3, 3, '2023-08-01', '2023-08-10', NULL, 600.00);
+INSERT INTO `rentalorder` VALUES (4, 4, 4, 4, '2023-09-01', '2023-09-10', NULL, 750.00);
+INSERT INTO `rentalorder` VALUES (5, 5, 5, 5, '2023-10-01', '2023-10-10', NULL, 900.00);
+INSERT INTO `rentalorder` VALUES (6, 6, 6, 6, '2023-11-01', '2023-11-10', NULL, 1050.00);
+INSERT INTO `rentalorder` VALUES (7, 7, 7, 7, '2023-12-01', '2023-12-10', NULL, 1200.00);
+INSERT INTO `rentalorder` VALUES (8, 8, 8, 8, '2024-01-01', '2024-01-10', NULL, 1350.00);
+INSERT INTO `rentalorder` VALUES (9, 9, 9, 9, '2024-02-01', '2024-02-10', NULL, 1500.00);
+INSERT INTO `rentalorder` VALUES (10, 10, 10, 10, '2024-03-01', '2024-03-10', NULL, 1650.00);
+
+-- ----------------------------
+-- Table structure for supplier
+-- ----------------------------
+DROP TABLE IF EXISTS `supplier`;
+CREATE TABLE `supplier` (
+ `SupplierID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `Name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `Phone` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Address` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ PRIMARY KEY (`SupplierID`) USING BTREE,
+ UNIQUE INDEX `SupplierID`(`SupplierID` ASC) USING BTREE,
+ INDEX `idx_supplier_name`(`Name` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of supplier
+-- ----------------------------
+INSERT INTO `supplier` VALUES (1, 'Supplier A', '123-456-7890', '123 Main St, City A');
+INSERT INTO `supplier` VALUES (2, 'Supplier B', '234-567-8901', '456 Elm St, City B');
+INSERT INTO `supplier` VALUES (3, 'Supplier C', '345-678-9012', '789 Oak St, City C');
+INSERT INTO `supplier` VALUES (4, 'Supplier D', '456-789-0123', '101 Pine St, City D');
+INSERT INTO `supplier` VALUES (5, 'Supplier E', '567-890-1234', '202 Maple St, City E');
+INSERT INTO `supplier` VALUES (6, 'Supplier F', '678-901-2345', '303 Cedar St, City F');
+INSERT INTO `supplier` VALUES (7, 'Supplier G', '789-012-3456', '404 Birch St, City G');
+INSERT INTO `supplier` VALUES (8, 'Supplier H', '890-123-4567', '505 Spruce St, City H');
+INSERT INTO `supplier` VALUES (9, 'Supplier I', '901-234-5678', '606 Willow St, City I');
+INSERT INTO `supplier` VALUES (10, 'Supplier J', '012-345-6789', '707 Ash St, City J');
+
+-- ----------------------------
+-- Table structure for vehicle
+-- ----------------------------
+DROP TABLE IF EXISTS `vehicle`;
+CREATE TABLE `vehicle` (
+ `VehicleID` bigint UNSIGNED NOT NULL AUTO_INCREMENT,
+ `LicensePlate` varchar(20) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NOT NULL,
+ `Model` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Brand` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ `Year` int NULL DEFAULT NULL,
+ `Status` varchar(30) CHARACTER SET utf8mb3 COLLATE utf8mb3_unicode_ci NULL DEFAULT NULL,
+ PRIMARY KEY (`VehicleID`) USING BTREE,
+ UNIQUE INDEX `VehicleID`(`VehicleID` ASC) USING BTREE,
+ INDEX `idx_vehicle_license_plate`(`LicensePlate` ASC) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8mb3 COLLATE = utf8mb3_unicode_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of vehicle
+-- ----------------------------
+INSERT INTO `vehicle` VALUES (2, 'XYZ789', 'SUV', 'Honda', 2020, 'Rented');
+INSERT INTO `vehicle` VALUES (3, 'LMN456', 'Convertible', 'Ford', 2019, 'Maintenance');
+INSERT INTO `vehicle` VALUES (4, 'PQR111', 'Hatchback', 'Nissan', 2018, 'Available');
+INSERT INTO `vehicle` VALUES (5, 'STU222', 'Coupe', 'Chevrolet', 2017, 'Rented');
+INSERT INTO `vehicle` VALUES (6, 'VWX333', 'Minivan', 'Chrysler', 2016, 'Available');
+INSERT INTO `vehicle` VALUES (7, 'YZA444', 'Pickup', 'GMC', 2015, 'Maintenance');
+INSERT INTO `vehicle` VALUES (8, 'BCD555', 'Sedan', 'Hyundai', 2014, 'Rented');
+INSERT INTO `vehicle` VALUES (9, 'EFG666', 'SUV', 'Subaru', 2013, 'Available');
+INSERT INTO `vehicle` VALUES (10, 'HIJ777', 'Convertible', 'Audi', 2012, 'Available');
+
+-- ----------------------------
+-- View structure for customerpaymentrecords
+-- ----------------------------
+DROP VIEW IF EXISTS `customerpaymentrecords`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `customerpaymentrecords` AS select `c`.`CustomerID` AS `CustomerID`,`c`.`Name` AS `CustomerName`,`p`.`OrderID` AS `OrderID`,`p`.`PaymentDate` AS `PaymentDate`,`p`.`PaymentAmount` AS `PaymentAmount` from ((`customer` `c` join `rentalorder` `r` on((`c`.`CustomerID` = `r`.`CustomerID`))) join `paymentrecord` `p` on((`r`.`OrderID` = `p`.`OrderID`)));
+
+-- ----------------------------
+-- View structure for customerrentalordercount
+-- ----------------------------
+DROP VIEW IF EXISTS `customerrentalordercount`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `customerrentalordercount` AS select `c`.`CustomerID` AS `CustomerID`,`c`.`Name` AS `CustomerName`,count(`r`.`OrderID`) AS `OrderCount` from (`customer` `c` join `rentalorder` `r` on((`c`.`CustomerID` = `r`.`CustomerID`))) group by `c`.`CustomerID`,`c`.`Name`;
+
+-- ----------------------------
+-- View structure for customerrentalorders
+-- ----------------------------
+DROP VIEW IF EXISTS `customerrentalorders`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `customerrentalorders` AS select `c`.`CustomerID` AS `CustomerID`,`c`.`Name` AS `CustomerName`,`r`.`OrderID` AS `OrderID`,`r`.`StartDate` AS `StartDate`,`r`.`DueDate` AS `DueDate`,`v`.`LicensePlate` AS `LicensePlate`,`v`.`Model` AS `Model` from ((`customer` `c` join `rentalorder` `r` on((`c`.`CustomerID` = `r`.`CustomerID`))) join `vehicle` `v` on((`r`.`VehicleID` = `v`.`VehicleID`)));
+
+-- ----------------------------
+-- View structure for customertotalrentalamount
+-- ----------------------------
+DROP VIEW IF EXISTS `customertotalrentalamount`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `customertotalrentalamount` AS select `c`.`CustomerID` AS `CustomerID`,`c`.`Name` AS `CustomerName`,sum(`r`.`TotalAmount`) AS `TotalAmount` from (`customer` `c` join `rentalorder` `r` on((`c`.`CustomerID` = `r`.`CustomerID`))) group by `c`.`CustomerID`,`c`.`Name`;
+
+-- ----------------------------
+-- View structure for supplierparts
+-- ----------------------------
+DROP VIEW IF EXISTS `supplierparts`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `supplierparts` AS select `s`.`SupplierID` AS `SupplierID`,`s`.`Name` AS `SupplierName`,`p`.`PartID` AS `PartID`,`p`.`Name` AS `PartName`,`p`.`Model` AS `Model`,`p`.`Quantity` AS `Quantity`,`p`.`Price` AS `Price` from (`supplier` `s` join `part` `p` on((`s`.`SupplierID` = `p`.`SupplierID`)));
+
+-- ----------------------------
+-- View structure for vehicleaccidentrecords
+-- ----------------------------
+DROP VIEW IF EXISTS `vehicleaccidentrecords`;
+CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `vehicleaccidentrecords` AS select `v`.`VehicleID` AS `VehicleID`,`v`.`LicensePlate` AS `LicensePlate`,`v`.`Model` AS `Model`,`a`.`AccidentDate` AS `AccidentDate`,`a`.`Description` AS `Description`,`a`.`DamageCost` AS `DamageCost` from (`vehicle` `v` join `accidentrecord` `a` on((`v`.`VehicleID` = `a`.`VehicleID`)));
+
+-- ----------------------------
+-- Procedure structure for AddNewCustomer
+-- ----------------------------
+DROP PROCEDURE IF EXISTS `AddNewCustomer`;
+delimiter ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `AddNewCustomer`(
+ IN p_Name VARCHAR(255),
+ IN p_Gender CHAR(1),
+ IN p_Phone VARCHAR(20),
+ IN p_Email VARCHAR(255),
+ IN p_RegistrationDate DATE
+)
+BEGIN
+ INSERT INTO Customer (Name, Gender, Phone, Email, RegistrationDate)
+ VALUES (p_Name, p_Gender, p_Phone, p_Email, p_RegistrationDate);
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Procedure structure for CreateInsurancePolicy
+-- ----------------------------
+DROP PROCEDURE IF EXISTS `CreateInsurancePolicy`;
+delimiter ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `CreateInsurancePolicy`(
+ IN p_PolicyNumber VARCHAR(20),
+ IN p_InsuranceCompany VARCHAR(255),
+ IN p_ValidityStart DATE,
+ IN p_ValidityEnd DATE
+)
+BEGIN
+ INSERT INTO Insurance (PolicyNumber, InsuranceCompany, ValidityStart, ValidityEnd)
+ VALUES (p_PolicyNumber, p_InsuranceCompany, p_ValidityStart, p_ValidityEnd);
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Procedure structure for RecordAccident
+-- ----------------------------
+DROP PROCEDURE IF EXISTS `RecordAccident`;
+delimiter ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `RecordAccident`(
+ IN p_VehicleID INT,
+ IN p_AccidentDate DATE,
+ IN p_Description TEXT,
+ IN p_DamageCost DECIMAL(10, 2)
+)
+BEGIN
+ INSERT INTO AccidentRecord (VehicleID, AccidentDate, Description, DamageCost)
+ VALUES (p_VehicleID, p_AccidentDate, p_Description, p_DamageCost);
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Procedure structure for RecordPayment
+-- ----------------------------
+DROP PROCEDURE IF EXISTS `RecordPayment`;
+delimiter ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `RecordPayment`(
+ IN p_OrderID INT,
+ IN p_PaymentMethod VARCHAR(50),
+ IN p_PaymentAmount DECIMAL(10, 2),
+ IN p_PaymentDate DATE
+)
+BEGIN
+ INSERT INTO PaymentRecord (OrderID, PaymentMethod, PaymentAmount, PaymentDate)
+ VALUES (p_OrderID, p_PaymentMethod, p_PaymentAmount, p_PaymentDate);
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Procedure structure for UpdateVehicleStatus
+-- ----------------------------
+DROP PROCEDURE IF EXISTS `UpdateVehicleStatus`;
+delimiter ;;
+CREATE DEFINER=`root`@`localhost` PROCEDURE `UpdateVehicleStatus`(
+ IN p_VehicleID INT,
+ IN p_Status VARCHAR(30)
+)
+BEGIN
+ UPDATE Vehicle
+ SET Status = p_Status
+ WHERE VehicleID = p_VehicleID;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table accidentrecord
+-- ----------------------------
+DROP TRIGGER IF EXISTS `trg_update_vehicle_status_on_accident`;
+delimiter ;;
+CREATE TRIGGER `trg_update_vehicle_status_on_accident` AFTER INSERT ON `accidentrecord` FOR EACH ROW BEGIN
+ UPDATE Vehicle
+ SET Status = 'Repair'
+ WHERE VehicleID = NEW.VehicleID;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table insurance
+-- ----------------------------
+DROP TRIGGER IF EXISTS `trg_check_insurance_validity`;
+delimiter ;;
+CREATE TRIGGER `trg_check_insurance_validity` BEFORE INSERT ON `insurance` FOR EACH ROW BEGIN
+ IF NEW.ValidityStart >= NEW.ValidityEnd THEN
+ SIGNAL SQLSTATE '45000'
+ SET MESSAGE_TEXT = 'Insurance validity period is invalid';
+ END IF;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table paymentrecord
+-- ----------------------------
+DROP TRIGGER IF EXISTS `trg_update_total_amount_on_payment`;
+delimiter ;;
+CREATE TRIGGER `trg_update_total_amount_on_payment` AFTER INSERT ON `paymentrecord` FOR EACH ROW BEGIN
+ UPDATE RentalOrder
+ SET TotalAmount = TotalAmount + NEW.PaymentAmount
+ WHERE OrderID = NEW.OrderID;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table rentalorder
+-- ----------------------------
+DROP TRIGGER IF EXISTS `trg_update_vehicle_status_on_rental`;
+delimiter ;;
+CREATE TRIGGER `trg_update_vehicle_status_on_rental` AFTER INSERT ON `rentalorder` FOR EACH ROW BEGIN
+ UPDATE Vehicle
+ SET Status = 'Rented'
+ WHERE VehicleID = NEW.VehicleID;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table rentalorder
+-- ----------------------------
+DROP TRIGGER IF EXISTS `UpdateVehicleStatusOnRental`;
+delimiter ;;
+CREATE TRIGGER `UpdateVehicleStatusOnRental` AFTER INSERT ON `rentalorder` FOR EACH ROW BEGIN
+ UPDATE Vehicle
+ SET Status = 'Rented'
+ WHERE VehicleID = NEW.VehicleID;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table rentalorder
+-- ----------------------------
+DROP TRIGGER IF EXISTS `trg_update_vehicle_status_on_return`;
+delimiter ;;
+CREATE TRIGGER `trg_update_vehicle_status_on_return` AFTER UPDATE ON `rentalorder` FOR EACH ROW BEGIN
+ IF NEW.ReturnDate IS NOT NULL THEN
+ UPDATE Vehicle
+ SET Status = 'Available'
+ WHERE VehicleID = NEW.VehicleID;
+ END IF;
+END
+;;
+delimiter ;
+
+-- ----------------------------
+-- Triggers structure for table rentalorder
+-- ----------------------------
+DROP TRIGGER IF EXISTS `UpdateVehicleStatusOnReturn`;
+delimiter ;;
+CREATE TRIGGER `UpdateVehicleStatusOnReturn` AFTER UPDATE ON `rentalorder` FOR EACH ROW BEGIN
+ IF OLD.ReturnDate IS NULL AND NEW.ReturnDate IS NOT NULL THEN
+ UPDATE Vehicle
+ SET Status = 'Available'
+ WHERE VehicleID = NEW.VehicleID;
+ END IF;
+END
+;;
+delimiter ;
+
+SET FOREIGN_KEY_CHECKS = 1;