###############################################################################
# Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
# DEALINGS IN THE SOFTWARE.
#

diff --git a/nls/iso8859-9/Compose.pre b/nls/iso8859-9/Compose.pre
index 83122a2..0e893a9 100644
--- a/nls/iso8859-9/Compose.pre
+++ b/nls/iso8859-9/Compose.pre
@@ -9,6 +9,7 @@ XCOMM Special Character
 <Multi_key> <plus> <plus>		: "#"	numbersign
 <Multi_key> <apostrophe> <space>	: "'"	apostrophe
 <Multi_key> <space> <apostrophe>	: "'"	apostrophe
+<Multi_key> <A> <A>			: "@"	at
 <Multi_key> <parenleft> <parenleft>	: "["	bracketleft
 <Multi_key> <slash> <slash>		: "\\"	backslash
 <Multi_key> <slash> <less>		: "\\"	backslash
@@ -79,6 +80,18 @@ XCOMM Special Character
 <Multi_key> <0> <S>			: "\247"	section
 <Multi_key> <s> <0>			: "\247"	section
 <Multi_key> <0> <s>			: "\247"	section
+<Multi_key> <x> <o>			: "\244"	currency
+<Multi_key> <o> <x>			: "\244"	currency
+<Multi_key> <X> <O>			: "\244"	currency
+<Multi_key> <O> <X>			: "\244"	currency
+<Multi_key> <x> <O>			: "\244"	currency
+<Multi_key> <O> <x>			: "\244"	currency
+<Multi_key> <X> <o>			: "\244"	currency
+<Multi_key> <o> <X>			: "\244"	currency
+<Multi_key> <x> <0>			: "\244"	currency
+<Multi_key> <0> <x>			: "\244"	currency
+<Multi_key> <X> <0>			: "\244"	currency
+<Multi_key> <0> <X>			: "\244"	currency
 <Multi_key> <c> <o>			: "\251"	copyright
 <Multi_key> <o> <c>			: "\251"	copyright
 <Multi_key> <C> <O>			: "\251"	copyright
@@ -137,10 +150,20 @@ XCOMM Special Character
 <Multi_key> <period> <asciicircum>	: "\267"	periodcentered
 <Multi_key> <asciicircum> <period>	: "\267"	periodcentered
 <Multi_key> <period> <period>		: "\267"	periodcentered
+<Multi_key> <1> <4>			: "\274"	onequarter
+<Multi_key> <1> <2>			: "\275"	onehalf
+<Multi_key> <3> <4>			: "\276"	threequarters
 <Multi_key> <question> <question>	: "\277"	questiondown
 <Multi_key> <space> <space>		: "\240"	nobreakspace
-<Multi_key> <minus> <comma>		: "\254"	notsign
-<Multi_key> <comma> <minus>		: "\254"	notsign
+<Multi_key> <bar> <bar>			: "\246"	brokenbar
+<Multi_key> <exclam> <asciicircum>	: "\246"	brokenbar
+<Multi_key> <asciicircum> <exclam>	: "\246"	brokenbar
+<Multi_key> <V> <B>			: "\246"	brokenbar
+<Multi_key> <B> <V>			: "\246"	brokenbar
+<Multi_key> <v> <b>			: "\246"	brokenbar
+<Multi_key> <b> <v>			: "\246"	brokenbar
+<Multi_key> <minus> <comma>		: "\254"	logicalnot
+<Multi_key> <comma> <minus>		: "\254"	logicalnot
 <Multi_key> <minus> <minus>		: "\255"	hyphen
 <Multi_key> <R> <O>			: "\256"	registered
 <Multi_key> <O> <R>			: "\256"	registered
@@ -177,8 +200,10 @@ XCOMM Accented Alphabet
 <Multi_key> <diaeresis> <A>		: "\304"	Adiaeresis
 <Multi_key> <A> <asterisk>		: "\305"	Aring
 <Multi_key> <asterisk> <A>		: "\305"	Aring
-<Multi_key> <A> <A>			: "\305"        Aring
+XCOMM Conflicts with existing Solaris <A> <A> mapping "@" above
+XCOMM <Multi_key> <A> <A>			: "\305"	Aring
 <Multi_key> <A> <E>			: "\306"	AE
+<AE>					: "\306"	AE
 <Multi_key> <a> <grave>			: "\340"	agrave
 <Multi_key> <grave> <a>			: "\340"	agrave
 <Multi_key> <a> <acute>			: "\341"	aacute
@@ -199,16 +224,20 @@ XCOMM Accented Alphabet
 <Multi_key> <diaeresis> <a>		: "\344"	adiaeresis
 <Multi_key> <a> <asterisk>		: "\345"	aring
 <Multi_key> <asterisk> <a>		: "\345"	aring
-<Multi_key> <a> <a>			: "\345"        aring
+XCOMM Conflicts with existing Solaris <A> <A> mapping to "@" above
+XCOMM <Multi_key> <a> <a>			: "\345"        aring
 <Multi_key> <a> <e>			: "\346"	ae
+<ae>					: "\346"	ae
 <Multi_key> <C> <comma>			: "\307"	Ccedilla
 <Multi_key> <C> <cedilla>		: "\307"	Ccedilla
 <Multi_key> <comma> <C>			: "\307"	Ccedilla
 <Multi_key> <cedilla> <C>		: "\307"	Ccedilla
+<Ccedilla>				: "\307"	Ccedilla
 <Multi_key> <c> <comma>			: "\347"	ccedilla
 <Multi_key> <c> <cedilla>		: "\347"	ccedilla
 <Multi_key> <comma> <c>			: "\347"	ccedilla
 <Multi_key> <cedilla> <c>		: "\347"	ccedilla
+<ccedilla>				: "\347"	ccedilla
 <Multi_key> <minus> <D>			: "\320"	ETH
 <Multi_key> <D> <minus>			: "\320"	ETH
 <Multi_key> <minus> <d>			: "\360"	eth
@@ -230,6 +259,7 @@ XCOMM Accented Alphabet
 <Multi_key> <e> <grave>			: "\350"	egrave
 <Multi_key> <grave> <e>			: "\350"	egrave
 <Multi_key> <e> <acute>			: "\351"	eacute
+<eacute>				: "\351"	eacute
 <Multi_key> <acute> <e>			: "\351"	eacute
 <Multi_key> <e> <apostrophe>		: "\351"	eacute
 <Multi_key> <apostrophe> <e>		: "\351"	eacute
@@ -251,6 +281,12 @@ XCOMM Accented Alphabet
 <Multi_key> <parenleft> <g>             : "\360"        gbreve
 <Multi_key> <g> <breve>                 : "\360"        gbreve
 <Multi_key> <breve> <g>                 : "\360"        gbreve
+<Multi_key> <G> <u>			: "\320"	Gbreve
+<Multi_key> <u> <G>                     : "\320"        Gbreve
+<Multi_key> <g> <u>                     : "\360"        gbreve
+<Multi_key> <u> <g>                     : "\360"        gbreve
+<gbreve>				: "\360"	gbreve
+<Gbreve>				: "\320"	Gbreve
 <Multi_key> <I> <grave>			: "\314"	Igrave
 <Multi_key> <grave> <I>			: "\314"	Igrave
 <Multi_key> <I> <acute>			: "\315"	Iacute
@@ -267,6 +303,7 @@ XCOMM Accented Alphabet
 <Multi_key> <diaeresis> <I>		: "\317"	Idiaeresis
 <Multi_key> <I> <period>                : "\335"        Iabovedot
 <Multi_key> <period> <I>                : "\335"        Iabovedot
+<Iabovedot>				: "\335"	Iabovedot
 <Multi_key> <i> <grave>			: "\354"	igrave
 <Multi_key> <grave> <i>			: "\354"	igrave
 <Multi_key> <i> <acute>			: "\355"	iacute
@@ -283,6 +320,7 @@ XCOMM Accented Alphabet
 <Multi_key> <diaeresis> <i>		: "\357"	idiaeresis
 <Multi_key> <i> <period>                : "\375"        idotless
 <Multi_key> <period> <i>                : "\375"        idotless
+<idotless>				: "\375"	idotless
 <Multi_key> <N> <asciitilde>		: "\321"	Ntilde
 <Multi_key> <asciitilde> <N>		: "\321"	Ntilde
 <Multi_key> <N> <minus>			: "\321"	Ntilde
@@ -309,6 +347,7 @@ XCOMM Accented Alphabet
 <Multi_key> <quotedbl> <O>		: "\326"	Odiaeresis
 <Multi_key> <O> <diaeresis>		: "\326"	Odiaeresis
 <Multi_key> <diaeresis> <O>		: "\326"	Odiaeresis
+<Odiaeresis>				: "\326"	Odiaeresis
 <Multi_key> <O> <slash>			: "\330"	Ooblique
 <Multi_key> <slash> <O>			: "\330"	Ooblique
 <Multi_key> <O> <E>			: "\274"	OE
@@ -330,6 +369,7 @@ XCOMM Accented Alphabet
 <Multi_key> <quotedbl> <o>		: "\366"	odiaeresis
 <Multi_key> <o> <diaeresis>		: "\366"	odiaeresis
 <Multi_key> <diaeresis> <o>		: "\366"	odiaeresis
+<odiaeresis>				: "\366"	odiaeresis
 <Multi_key> <o> <slash>			: "\370"	oslash
 <Multi_key> <slash> <o>			: "\370"	oslash
 <Multi_key> <S> <cedilla>               : "\336"        Scedilla
@@ -340,6 +380,8 @@ XCOMM Accented Alphabet
 <Multi_key> <comma> <s>                 : "\376"        scedilla
 <Multi_key> <s> <cedilla>               : "\376"        scedilla
 <Multi_key> <s> <comma>                 : "\376"        scedilla
+<Scedilla>				: "\336"	Scedilla
+<scedilla>				: "\376"	scedilla
 <Multi_key> <U> <grave>			: "\331"	Ugrave
 <Multi_key> <grave> <U>			: "\331"	Ugrave
 <Multi_key> <U> <acute>			: "\332"	Uacute
@@ -354,6 +396,7 @@ XCOMM Accented Alphabet
 <Multi_key> <quotedbl> <U>		: "\334"	Udiaeresis
 <Multi_key> <U> <diaeresis>		: "\334"	Udiaeresis
 <Multi_key> <diaeresis> <U>		: "\334"	Udiaeresis
+<Udiaeresis>				: "\334"	Udiaeresis
 <Multi_key> <u> <grave>			: "\371"	ugrave
 <Multi_key> <grave> <u>			: "\371"	ugrave
 <Multi_key> <u> <acute>			: "\372"	uacute
@@ -368,7 +411,9 @@ XCOMM Accented Alphabet
 <Multi_key> <quotedbl> <u>		: "\374"	udiaeresis
 <Multi_key> <u> <diaeresis>		: "\374"	udiaeresis
 <Multi_key> <diaeresis> <u>		: "\374"	udiaeresis
+<udiaeresis>				: "\374"        udiaeresis
 <Multi_key> <s> <s>			: "\337"	ssharp
+<ssharp>				: "\337"	ssharp
 <Multi_key> <T> <H>			: "\336"	THORN
 <Multi_key> <t> <h>			: "\376"	thorn
 <Multi_key> <Y> <acute>			: "\335"	Yacute
@@ -407,6 +452,7 @@ XCOMM Special Character
 <dead_circumflex> <2>			: "\262"	twosuperior
 <dead_circumflex> <3>			: "\263"	threesuperior
 <dead_circumflex> <period>		: "\267"	periodcentered
+<dead_circumflex> <exclam>		: "\246"	brokenbar
 <dead_cedilla> <minus>			: "\254"	notsign
 <dead_circumflex> <minus>		: "\257"	macron
 <dead_circumflex> <underscore>		: "\257"	macron
@@ -478,4 +524,373 @@ XCOMM Accented Alphabet
 <dead_diaeresis> <y>			: "\377"	ydiaeresis
 <dead_caron> <Z>			: "\264"	Zcaron
 <dead_caron> <z>			: "\270"	zcaron
+XCOMM
+XCOMM Ctrl<T> Means <Compose>
+XCOMM Special Character
+Ctrl<T> <plus> <plus>			: "#"	numbersign
+Ctrl<T> <apostrophe> <space>		: "'"	apostrophe
+Ctrl<T> <space> <apostrophe>		: "'"	apostrophe
+Ctrl<T> <A> <A>				: "@"	at
+Ctrl<T> <parenleft> <parenleft>		: "["	bracketleft
+Ctrl<T> <slash> <slash>			: "\\"	backslash
+Ctrl<T> <slash> <less>			: "\\"	backslash
+Ctrl<T> <less> <slash>			: "\\"	backslash
+Ctrl<T> <parenright> <parenright>	: "]"	bracketright
+Ctrl<T> <asciicircum> <space>		: "^"	asciicircum
+Ctrl<T> <space> <asciicircum>		: "^"	asciicircum
+Ctrl<T> <greater> <space>		: "^"	asciicirum
+Ctrl<T> <space> <greater>		: "^"	asciicirum
+Ctrl<T> <grave> <space>			: "`"	grave
+Ctrl<T> <space> <grave>			: "`"	grave
+Ctrl<T> <parenleft> <minus>		: "{"	braceleft
+Ctrl<T> <minus> <parenleft>		: "{"	braceleft
+Ctrl<T> <slash> <asciicircum>		: "|"	bar
+Ctrl<T> <asciicircum> <slash>		: "|"	bar
+Ctrl<T> <V> <L>				: "|"	bar
+Ctrl<T> <L> <V>				: "|"	bar
+Ctrl<T> <v> <l>				: "|"	bar
+Ctrl<T> <l> <v>				: "|"	bar
+Ctrl<T> <parenright> <minus>		: "}"	braceright
+Ctrl<T> <minus> <parenright>		: "}"	braceright
+Ctrl<T> <asciitilde> <space>		: "~"	asciitilde
+Ctrl<T> <space> <asciitilde>		: "~"	asciitilde
+Ctrl<T> <minus> <space>			: "~"	asciitilde
+Ctrl<T> <space> <minus>			: "~"	asciitilde
+Ctrl<T> <exclam> <exclam>		: "\241"	exclamdown
+Ctrl<T> <c> <slash>			: "\242"	cent
+Ctrl<T> <slash> <c>			: "\242"	cent
+Ctrl<T> <C> <slash>			: "\242"	cent
+Ctrl<T> <slash> <C>			: "\242"	cent
+Ctrl<T> <C> <bar>			: "\242"	cent
+Ctrl<T> <bar> <C>			: "\242"	cent
+Ctrl<T> <c> <bar>			: "\242"	cent
+Ctrl<T> <bar> <c>			: "\242"	cent
+Ctrl<T> <l> <minus>			: "\243"	sterling
+Ctrl<T> <minus> <l>			: "\243"	sterling
+Ctrl<T> <L> <minus>			: "\243"	sterling
+Ctrl<T> <minus> <L>			: "\243"	sterling
+Ctrl<T> <l> <equal>			: "\243"	sterling
+Ctrl<T> <equal> <l>			: "\243"	sterling
+Ctrl<T> <L> <equal>			: "\243"	sterling
+Ctrl<T> <equal> <L>			: "\243"	sterling
+Ctrl<T> <y> <minus>			: "\245"	yen
+Ctrl<T> <minus> <y>			: "\245"	yen
+Ctrl<T> <Y> <minus>			: "\245"	yen
+Ctrl<T> <minus> <Y>			: "\245"	yen
+Ctrl<T> <y> <equal>			: "\245"	yen
+Ctrl<T> <equal> <y>			: "\245"	yen
+Ctrl<T> <Y> <equal>			: "\245"	yen
+Ctrl<T> <equal> <Y>			: "\245"	yen
+Ctrl<T> <s> <o>				: "\247"	section
+Ctrl<T> <o> <s>				: "\247"	section
+Ctrl<T> <S> <O>				: "\247"	section
+Ctrl<T> <O> <S>				: "\247"	section
+Ctrl<T> <S> <exclam>			: "\247"	section
+Ctrl<T> <exclam> <S>			: "\247"	section
+Ctrl<T> <s> <exclam>			: "\247"	section
+Ctrl<T> <exclam> <s>			: "\247"	section
+Ctrl<T> <S> <0>				: "\247"	section
+Ctrl<T> <0> <S>				: "\247"	section
+Ctrl<T> <s> <0>				: "\247"	section
+Ctrl<T> <0> <s>				: "\247"	section
+Ctrl<T> <x> <o>				: "\244"	currency
+Ctrl<T> <o> <x>				: "\244"	currency
+Ctrl<T> <X> <O>				: "\244"	currency
+Ctrl<T> <O> <X>				: "\244"	currency
+Ctrl<T> <x> <O>				: "\244"	currency
+Ctrl<T> <O> <x>				: "\244"	currency
+Ctrl<T> <X> <o>				: "\244"	currency
+Ctrl<T> <o> <X>				: "\244"	currency
+Ctrl<T> <x> <0>				: "\244"	currency
+Ctrl<T> <0> <x>				: "\244"	currency
+Ctrl<T> <X> <0>				: "\244"	currency
+Ctrl<T> <0> <X>				: "\244"	currency
+Ctrl<T> <c> <o>				: "\251"	copyright
+Ctrl<T> <o> <c>				: "\251"	copyright
+Ctrl<T> <C> <O>				: "\251"	copyright
+Ctrl<T> <O> <C>				: "\251"	copyright
+Ctrl<T> <c> <O>				: "\251"	copyright
+Ctrl<T> <O> <c>				: "\251"	copyright
+Ctrl<T> <C> <o>				: "\251"	copyright
+Ctrl<T> <o> <C>				: "\251"	copyright
+Ctrl<T> <c> <0>				: "\251"	copyright
+Ctrl<T> <0> <c>				: "\251"	copyright
+Ctrl<T> <C> <0>				: "\251"	copyright
+Ctrl<T> <0> <C>				: "\251"	copyright
+Ctrl<T> <a> <underscore>		: "\252"	ordfeminine
+Ctrl<T> <underscore> <a>		: "\252"	ordfeminine
+Ctrl<T> <A> <underscore>		: "\252"	ordfeminine
+Ctrl<T> <underscore> <A>		: "\252"	ordfeminine
+Ctrl<T> <o> <underscore>		: "\272"	masculine
+Ctrl<T> <underscore> <o>		: "\272"	masculine
+Ctrl<T> <O> <underscore>		: "\272"	masculine
+Ctrl<T> <underscore> <O>		: "\272"	masculine
+Ctrl<T> <less> <less>			: "\253"	guillemotleft
+Ctrl<T> <greater> <greater>		: "\273"	guillemotright
+Ctrl<T> <0> <asciicircum>		: "\260"	degree
+Ctrl<T> <asciicircum> <0>		: "\260"	degree
+Ctrl<T> <0> <asterisk>			: "\260"	degree
+Ctrl<T> <asterisk> <0>			: "\260"	degree
+Ctrl<T> <plus> <minus>			: "\261"	plusminus
+Ctrl<T> <minus> <plus>			: "\261"	plusminus
+Ctrl<T> <slash> <u>			: "\265"	mu
+Ctrl<T> <u> <slash>			: "\265"	mu
+Ctrl<T> <slash> <U>			: "\265"	mu
+Ctrl<T> <U> <slash>			: "\265"	mu
+Ctrl<T> <1> <asciicircum>		: "\271"	onesuperior
+Ctrl<T> <asciicircum> <1>		: "\271"	onesuperior
+Ctrl<T> <S> <1>				: "\271"	onesuperior
+Ctrl<T> <1> <S>				: "\271"	onesuperior
+Ctrl<T> <s> <1>				: "\271"	onesuperior
+Ctrl<T> <1> <s>				: "\271"	onesuperior
+Ctrl<T> <2> <asciicircum>		: "\262"	twosuperior
+Ctrl<T> <asciicircum> <2>		: "\262"	twosuperior
+Ctrl<T> <S> <2>				: "\262"	twosuperior
+Ctrl<T> <2> <S>				: "\262"	twosuperior
+Ctrl<T> <s> <2>				: "\262"	twosuperior
+Ctrl<T> <2> <s>				: "\262"	twosuperior
+Ctrl<T> <3> <asciicircum>		: "\263"	threesuperior
+Ctrl<T> <asciicircum> <3>		: "\263"	threesuperior
+Ctrl<T> <S> <3>				: "\263"	threesuperior
+Ctrl<T> <3> <S>				: "\263"	threesuperior
+Ctrl<T> <s> <3>				: "\263"	threesuperior
+Ctrl<T> <3> <s>				: "\263"	threesuperior
+Ctrl<T> <p> <exclam>			: "\266"	paragraph
+Ctrl<T> <exclam> <p>			: "\266"	paragraph
+Ctrl<T> <P> <exclam>			: "\266"	paragraph
+Ctrl<T> <exclam> <P>			: "\266"	paragraph
+Ctrl<T> <period> <asciicircum>		: "\267"	periodcentered
+Ctrl<T> <asciicircum> <period>		: "\267"	periodcentered
+Ctrl<T> <period> <period>		: "\267"	periodcentered
+Ctrl<T> <1> <4>				: "\274"	onequarter
+Ctrl<T> <1> <2>				: "\275"	onehalf
+Ctrl<T> <3> <4>				: "\276"	threequarters
+Ctrl<T> <question> <question>		: "\277"	questiondown
+Ctrl<T> <space> <space>			: "\240"	nobreakspace
+Ctrl<T> <bar> <bar>			: "\246"	brokenbar
+Ctrl<T> <exclam> <asciicircum>		: "\246"	brokenbar
+Ctrl<T> <asciicircum> <exclam>		: "\246"	brokenbar
+Ctrl<T> <V> <B>				: "\246"	brokenbar
+Ctrl<T> <B> <V>				: "\246"	brokenbar
+Ctrl<T> <v> <b>				: "\246"	brokenbar
+Ctrl<T> <b> <v>				: "\246"	brokenbar
+Ctrl<T> <minus> <comma>			: "\254"	notsign
+Ctrl<T> <comma> <minus>			: "\254"	notsign
+Ctrl<T> <minus> <minus>			: "\255"	hyphen
+Ctrl<T> <R> <O>				: "\256"	registered
+Ctrl<T> <O> <R>				: "\256"	registered
+Ctrl<T> <minus> <asciicircum>		: "\257"	macron
+Ctrl<T> <asciicircum> <minus>		: "\257"	macron
+Ctrl<T> <underscore> <asciicircum>	: "\257"	macron
+Ctrl<T> <asciicircum> <underscore>	: "\257"	macron
+Ctrl<T> <underscore> <underscore>	: "\257"	macron
+Ctrl<T> <minus> <colon>			: "\367"	division
+Ctrl<T> <colon> <minus>			: "\367"	division
+Ctrl<T> <x> <x>				: "\327"	multiply
+Ctrl<T> <apostrophe> <apostrophe>	: "\264"	acute
+Ctrl<T> <comma> <comma>			: "\270"	cedilla
+Ctrl<T> <quotedbl> <quotedbl>		: "\250"	diaeresis
+XCOMM Accented Alphabet
+Ctrl<T> <A> <grave>			: "\300"	Agrave
+Ctrl<T> <grave> <A>			: "\300"	Agrave
+Ctrl<T> <A> <acute>			: "\301"	Aacute
+Ctrl<T> <acute> <A>			: "\301"	Aacute
+Ctrl<T> <A> <apostrophe>		: "\301"	Aacute
+Ctrl<T> <apostrophe> <A>		: "\301"	Aacute
+Ctrl<T> <A> <asciicircum>		: "\302"	Acircumflex
+Ctrl<T> <asciicircum> <A>		: "\302"	Acircumflex
+Ctrl<T> <A> <greater>			: "\302"	Acircumflex
+Ctrl<T> <greater> <A>			: "\302"	Acircumflex
+Ctrl<T> <A> <asciitilde>		: "\303"	Atilde
+Ctrl<T> <asciitilde> <A>		: "\303"	Atilde
+Ctrl<T> <A> <minus>			: "\303"	Atilde
+Ctrl<T> <minus> <A>			: "\303"	Atilde
+Ctrl<T> <A> <quotedbl>			: "\304"	Adiaeresis
+Ctrl<T> <quotedbl> <A>			: "\304"	Adiaeresis
+Ctrl<T> <A> <asterisk>			: "\305"	Aring
+Ctrl<T> <asterisk> <A>			: "\305"	Aring
+Ctrl<T> <A> <E>				: "\306"	AE
+Ctrl<T> <a> <grave>			: "\340"	agrave
+Ctrl<T> <grave> <a>			: "\340"	agrave
+Ctrl<T> <a> <acute>			: "\341"	aacute
+Ctrl<T> <acute> <a>			: "\341"	aacute
+Ctrl<T> <a> <apostrophe>		: "\341"	aacute
+Ctrl<T> <apostrophe> <a>		: "\341"	aacute
+Ctrl<T> <a> <asciicircum>		: "\342"	acircumflex
+Ctrl<T> <asciicircum> <a>		: "\342"	acircumflex
+Ctrl<T> <a> <greater>			: "\342"	acircumflex
+Ctrl<T> <greater> <a>			: "\342"	acircumflex
+Ctrl<T> <a> <asciitilde>		: "\343"	atilde
+Ctrl<T> <asciitilde> <a>		: "\343"	atilde
+Ctrl<T> <a> <minus>			: "\343"	atilde
+Ctrl<T> <minus> <a>			: "\343"	atilde
+Ctrl<T> <a> <quotedbl>			: "\344"	adiaeresis
+Ctrl<T> <quotedbl> <a>			: "\344"	adiaeresis
+Ctrl<T> <a> <asterisk>			: "\345"	aring
+Ctrl<T> <asterisk> <a>			: "\345"	aring
+Ctrl<T> <a> <e>				: "\346"	ae
+Ctrl<T> <C> <comma>			: "\307"	Ccedilla
+Ctrl<T> <comma> <C>			: "\307"	Ccedilla
+Ctrl<T> <c> <comma>			: "\347"	ccedilla
+Ctrl<T> <comma> <c>			: "\347"	ccedilla
+XCOMM Ctrl<T> <minus> <D>			: "\320"	ETH
+XCOMM Ctrl<T> <D> <minus>			: "\320"	ETH
+XCOMM Ctrl<T> <minus> <d>			: "\360"	eth
+XCOMM Ctrl<T> <d> <minus>			: "\360"	eth
+Ctrl<T> <E> <grave>			: "\310"	Egrave
+Ctrl<T> <grave> <E>			: "\310"	Egrave
+Ctrl<T> <E> <acute>			: "\311"	Eacute
+Ctrl<T> <acute> <E>			: "\311"	Eacute
+Ctrl<T> <E> <apostrophe>		: "\311"	Eacute
+Ctrl<T> <apostrophe> <E>		: "\311"	Eacute
+Ctrl<T> <E> <asciicircum>		: "\312"	Ecircumflex
+Ctrl<T> <asciicircum> <E>		: "\312"	Ecircumflex
+Ctrl<T> <E> <greater>			: "\312"	Ecircumflex
+Ctrl<T> <greater> <E>			: "\312"	Ecircumflex
+Ctrl<T> <E> <quotedbl>			: "\313"	Ediaeresis
+Ctrl<T> <quotedbl> <E>			: "\313"	Ediaeresis
+Ctrl<T> <e> <grave>			: "\350"	egrave
+Ctrl<T> <grave> <e>			: "\350"	egrave
+Ctrl<T> <e> <acute>			: "\351"	eacute
+Ctrl<T> <acute> <e>			: "\351"	eacute
+Ctrl<T> <e> <apostrophe>		: "\351"	eacute
+Ctrl<T> <apostrophe> <e>		: "\351"	eacute
+Ctrl<T> <e> <asciicircum>		: "\352"	ecircumflex
+Ctrl<T> <asciicircum> <e>		: "\352"	ecircumflex
+Ctrl<T> <e> <greater>			: "\352"	ecircumflex
+Ctrl<T> <greater> <e>			: "\352"	ecircumflex
+Ctrl<T> <e> <quotedbl>			: "\353"	ediaeresis
+Ctrl<T> <quotedbl> <e>			: "\353"	ediaeresis
+Ctrl<T> <I> <grave>			: "\314"	Igrave
+Ctrl<T> <grave> <I>			: "\314"	Igrave
+Ctrl<T> <I> <acute>			: "\315"	Iacute
+Ctrl<T> <acute> <I>			: "\315"	Iacute
+Ctrl<T> <I> <apostrophe>		: "\315"	Iacute
+Ctrl<T> <apostrophe> <I>		: "\315"	Iacute
+Ctrl<T> <I> <asciicircum>		: "\316"	Icircumflex
+Ctrl<T> <asciicircum> <I>		: "\316"	Icircumflex
+Ctrl<T> <I> <greater>			: "\316"	Icircumflex
+Ctrl<T> <greater> <I>			: "\316"	Icircumflex
+Ctrl<T> <I> <quotedbl>			: "\317"	Idiaeresis
+Ctrl<T> <quotedbl> <I>			: "\317"	Idiaeresis
+Ctrl<T> <i> <grave>			: "\354"	igrave
+Ctrl<T> <grave> <i>			: "\354"	igrave
+Ctrl<T> <i> <acute>			: "\355"	iacute
+Ctrl<T> <acute> <i>			: "\355"	iacute
+Ctrl<T> <i> <apostrophe>		: "\355"	iacute
+Ctrl<T> <apostrophe> <i>		: "\355"	iacute
+Ctrl<T> <i> <asciicircum>		: "\356"	icircumflex
+Ctrl<T> <asciicircum> <i>		: "\356"	icircumflex
+Ctrl<T> <i> <greater>			: "\356"	icircumflex
+Ctrl<T> <greater> <i>			: "\356"	icircumflex
+Ctrl<T> <i> <quotedbl>			: "\357"	idiaeresis
+Ctrl<T> <quotedbl> <i>			: "\357"	idiaeresis
+Ctrl<T> <N> <asciitilde>		: "\321"	Ntilde
+Ctrl<T> <asciitilde> <N>		: "\321"	Ntilde
+Ctrl<T> <N> <minus>			: "\321"	Ntilde
+Ctrl<T> <minus> <N>			: "\321"	Ntilde
+Ctrl<T> <n> <asciitilde>		: "\361"	ntilde
+Ctrl<T> <asciitilde> <n>		: "\361"	ntilde
+Ctrl<T> <n> <minus>			: "\361"	ntilde
+Ctrl<T> <minus> <n>			: "\361"	ntilde
+Ctrl<T> <O> <grave>			: "\322"	Ograve
+Ctrl<T> <grave> <O>			: "\322"	Ograve
+Ctrl<T> <O> <acute>			: "\323"	Oacute
+Ctrl<T> <acute> <O>			: "\323"	Oacute
+Ctrl<T> <O> <apostrophe>		: "\323"	Oacute
+Ctrl<T> <apostrophe> <O>		: "\323"	Oacute
+Ctrl<T> <O> <asciicircum>		: "\324"	Ocircumflex
+Ctrl<T> <asciicircum> <O>		: "\324"	Ocircumflex
+Ctrl<T> <O> <greater>			: "\324"	Ocircumflex
+Ctrl<T> <greater> <O>			: "\324"	Ocircumflex
+Ctrl<T> <O> <asciitilde>		: "\325"	Otilde
+Ctrl<T> <asciitilde> <O>		: "\325"	Otilde
+Ctrl<T> <O> <minus>			: "\325"	Otilde
+Ctrl<T> <minus> <O>			: "\325"	Otilde
+Ctrl<T> <O> <quotedbl>			: "\326"	Odiaeresis
+Ctrl<T> <quotedbl> <O>			: "\326"	Odiaeresis
+Ctrl<T> <O> <slash>			: "\330"	Ooblique
+Ctrl<T> <slash> <O>			: "\330"	Ooblique
+Ctrl<T> <o> <grave>			: "\362"	ograve
+Ctrl<T> <grave> <o>			: "\362"	ograve
+Ctrl<T> <o> <acute>			: "\363"	oacute
+Ctrl<T> <acute> <o>			: "\363"	oacute
+Ctrl<T> <o> <apostrophe>		: "\363"	oacute
+Ctrl<T> <apostrophe> <o>		: "\363"	oacute
+Ctrl<T> <o> <asciicircum>		: "\364"	ocircumflex
+Ctrl<T> <asciicircum> <o>		: "\364"	ocircumflex
+Ctrl<T> <o> <greater>			: "\364"	ocircumflex
+Ctrl<T> <greater> <o>			: "\364"	ocircumflex
+Ctrl<T> <o> <asciitilde>		: "\365"	otilde
+Ctrl<T> <asciitilde> <o>		: "\365"	otilde
+Ctrl<T> <o> <minus>			: "\365"	otilde
+Ctrl<T> <minus> <o>			: "\365"	otilde
+Ctrl<T> <o> <quotedbl>			: "\366"	odiaeresis
+Ctrl<T> <quotedbl> <o>			: "\366"	odiaeresis
+Ctrl<T> <o> <slash>			: "\370"	oslash
+Ctrl<T> <slash> <o>			: "\370"	oslash
+Ctrl<T> <U> <grave>			: "\331"	Ugrave
+Ctrl<T> <grave> <U>			: "\331"	Ugrave
+Ctrl<T> <U> <acute>			: "\332"	Uacute
+Ctrl<T> <acute> <U>			: "\332"	Uacute
+Ctrl<T> <U> <apostrophe>		: "\332"	Uacute
+Ctrl<T> <apostrophe> <U>		: "\332"	Uacute
+Ctrl<T> <U> <asciicircum>		: "\333"	Ucircumflex
+Ctrl<T> <asciicircum> <U>		: "\333"	Ucircumflex
+Ctrl<T> <U> <greater>			: "\333"	Ucircumflex
+Ctrl<T> <greater> <U>			: "\333"	Ucircumflex
+Ctrl<T> <U> <quotedbl>			: "\334"	Udiaeresis
+Ctrl<T> <quotedbl> <U>			: "\334"	Udiaeresis
+Ctrl<T> <u> <grave>			: "\371"	ugrave
+Ctrl<T> <grave> <u>			: "\371"	ugrave
+Ctrl<T> <u> <acute>			: "\372"	uacute
+Ctrl<T> <acute> <u>			: "\372"	uacute
+Ctrl<T> <u> <apostrophe>		: "\372"	uacute
+Ctrl<T> <apostrophe> <u>		: "\372"	uacute
+Ctrl<T> <u> <asciicircum>		: "\373"	ucircumflex
+Ctrl<T> <asciicircum> <u>		: "\373"	ucircumflex
+Ctrl<T> <u> <greater>			: "\373"	ucircumflex
+Ctrl<T> <greater> <u>			: "\373"	ucircumflex
+Ctrl<T> <u> <quotedbl>			: "\374"	udiaeresis
+Ctrl<T> <quotedbl> <u>			: "\374"	udiaeresis
+Ctrl<T> <s> <s>				: "\337"	ssharp
+XCOMM Ctrl<T> <T> <H>				: "\336"	THORN
+XCOMM Ctrl<T> <t> <h>				: "\376"	thorn
+XCOMM Ctrl<T> <Y> <acute>			: "\335"	Yacute
+XCOMM Ctrl<T> <acute> <Y>			: "\335"	Yacute
+XCOMM Ctrl<T> <Y> <apostrophe>		: "\335"	Yacute
+XCOMM Ctrl<T> <apostrophe> <Y>		: "\335"	Yacute
+XCOMM Ctrl<T> <y> <acute>			: "\375"	yacute
+XCOMM Ctrl<T> <acute> <y>			: "\375"	yacute
+XCOMM Ctrl<T> <y> <apostrophe>		: "\375"	yacute
+XCOMM Ctrl<T> <apostrophe> <y>		: "\375"	yacute
+Ctrl<T> <y> <quotedbl>			: "\377"	ydiaeresis
+Ctrl<T> <quotedbl> <y>			: "\377"	ydiaeresis
 XCOMM End of Sequence Definition
+
+XCOMM StartDeadKeyMap <diaeresis>
+XCOMM<SunFA_Diaeresis>                <diaeresis>
+<SunFA_Diaeresis> <A>             : "\304"      Adiaeresis
+<SunFA_Diaeresis> <E>             : "\313"      Ediaeresis
+<SunFA_Diaeresis> <O>             : "\326"      Odiaeresis
+<SunFA_Diaeresis> <U>             : "\334"      Udiaeresis
+<SunFA_Diaeresis> <a>             : "\344"      adiaeresis
+<SunFA_Diaeresis> <e>             : "\353"      ediaeresis
+<SunFA_Diaeresis> <o>             : "\366"      odiaeresis
+<SunFA_Diaeresis> <u>             : "\374"      udiaeresis
+XCOMM EndDeadKeyMap
+
+XCOMM StartDeadKeyMap <acute>
+XCOMM<SunFA_Acute>                  <acute>
+<SunFA_Acute> <A>                       : "\301"        Aacute
+<SunFA_Acute> <E>                       : "\311"        Eacute
+<SunFA_Acute> <I>                       : "\315"        Iacute
+<SunFA_Acute> <O>                       : "\323"        Oacute
+<SunFA_Acute> <U>                       : "\332"        Uacute
+<SunFA_Acute> <a>                       : "\341"        aacute
+<SunFA_Acute> <e>                       : "\351"        eacute
+<SunFA_Acute> <i>                       : "\355"        iacute
+<SunFA_Acute> <o>                       : "\363"        oacute
+<SunFA_Acute> <u>                       : "\372"        uacute
+XCOMM EndDeadKeyMap
+
