403Webshell
Server IP : 209.209.40.120  /  Your IP : 216.73.217.112
Web Server : Microsoft-IIS/10.0
System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586
User : NEWWWW$ ( 0)
PHP Version : 8.3.30
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : OFF  |  Perl : OFF  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /Program Files (x86)/MySQL/Connector.NET 6.9/Assemblies/v4.0/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /Program Files (x86)/MySQL/Connector.NET 6.9/Assemblies/v4.0/MySql.Data.Entity.EF6.dll
MZ����@���	�!�L�!This program cannot be run in DOS mode.

$PEL/"dW�" 0H�f � ��@�hfO���0e  H.text�F H `.rsrc��J@@.reloc�P@B�fHL�D	�� ��d�{
*:(
}
*0#u
,(
{
{
o
**v ��PQ )UU�Z(
{
o
X*0Mrp�%{

��-q�-&+�o
�( 
*{!
*{"
*V(
}!
}"
*0;u
,/(
{!
{!
o
,(#
{"
{"
o$
**� �j� )UU�Z(
{!
o
X )UU�Z(#
{"
o%
X*0�r1p�%{!

��-q�-&+�o
�%{"
�	�-q
	�-&+�o
�( 
*{&
*{'
*V(
}&
}'
*0;u
,/(
{&
{&
o
,(#
{'
{'
o$
**� YK�s )UU�Z(
{&
o
X )UU�Z(#
{'
o%
X*0�rep�%{&

��-q�-&+�o
�%{'
�	�-q
	�-&+�o
�( 
*N(((
}*.r�p(*�r�p()
,(*r+p()
,(*rQp(*
s+
z.r�p(*0�{(,
(-

#@4r�ps.
z#ffffff@4rKp(*#@4rp(*#ffffff@4r�p(*#������@4r�p(*rp(*0�-rOps/
zo0
o1
o2

(3
o4
-rcp(*
s5
z(3
o6
o7
-(8
*o7
3Bo9
r�po:
,$o;
-o<
,o<
��(=
*(>
*(?
*0�-r�ps/
zo0
u
-((*
s5
zo9
o7
ES����1G]s&�8-(@
r�po6
(?
*(@
rpo6
(?
*(@
rpo6
(?
*(@
r%po6
(?
*(@
r7po6
(?
*(@
r?po6
(?
*(@
rMpo6
(?
*(@
rWpo6
(?
*(@
repo6
(?
*

o9
rqpo:
,o;
-o<
,
o<
��
o9
r�po:
, o;
-o<
,o<
��(@
r�po6
	(A
*r�poB
o<
,r�poB
o<
��+r�poB
o;
-o<
,o<
�� ����+, ���+o<
��~C
	 �/	r�p	++ ���/	r�p	+ ���?/	r�p	+r�p	(@
	o6
(D
*~C

r�poB
o<
,r�poB
o<
��+r�poB
o<
,r�poB
o<
��+r�poB
9�-r
p+rp
o<
,Ao<
o

(E
,,
 �0#(@

o6
o<
��(=
*o<
,4o<
o
r#p()
,(@

o6
 �(=
*(@

o6
(>
*-r+p+r;p
o<
,mo<
o

(E
,X
 ��1
 ���0	rMp
+o<
�� ���1rcp
(@

o6
o<
��(=
*(@
rcpo6
 ���(=
*(@
rupo6
(?
*(@
r�po6
(?
*(@
r�po6
(?
*(o7
�(F
s.
zF(G
oH
(I
*nr�p(*
(sJ
(K
*0$	(G
oH
%sL
%oM

oN
oO
*\S*0	
(*0�R-~C
*r�poP
-r�poP
-r�poP
-*oQ
sR

+/oS

	%.
	_.	\3\oT
&R	oT
&XoQ
2�o
*
*0�s4
(U
-sV
o#+fr�pr�poW
sX
oY
oZ
o
([
(\
��r�p(]
��(^
sV
o#�
,o_
�o"(`
,r�psV
o#o0*2Fx
(
*{*"}*.s4�*0�
-rps/
z
u2,sH
+>uw,s,
+.u�,s�
+ut,s
+u5,s!
oMswoa
u2,u2oob
(&
u5,u5oc

od
oe
8�of
og
(h
oi
oj
(k
(�ol
	,K	om
(h
on
,4oo
oi
op
(�oj
oq
(�ol
or
os
&ot
:^����,o_
�oKou
+(v
	or
	os
&(w
-���o_
�ox
*��`y$��u2,u2('*u5,
u5((*0zoy
u3
,joz
o{
o0
u4,Qo|
o}
�}2+)o|
o~
o
o0
u
{2	�Xo|
o}
2�*0�o�
9�o�
o0
t�o�
o0

o�
$3Ot�o|
o}
�}2+$o~
o
o0
t
{2	�Xo}
2�*o�
3�}2{2t�*0�u"o�
o�
s�
%o�
o�
sX

oY
oZ
([
(\
��r�p(]
��(^
sV
(#oZ
o�
(,
(-
#@4rps.
z#ffffff@4r�p
�N#@4r�p
�:#ffffff@4r�p
�&#������@4r�p
�r�p
�
,o_
�	*'��
s*0�-r�ps/
zu"
-(r�ps�
zo�
o�
s�

o�
s�
o�
o�
	o�
o�
	oY
r�p(F
	s�
o�
&�
	,	o_
�*?P�
0�-r�ps/
zu"
-(r�ps�
zs�
%o�
o�
%o�
%o�
o�
sX
oY
rp��%�o�

	,	o�
o�
3��
,o_
�*R7�
0�-r�ps/
zu"
-(r�ps�
zs�
%o�
o�
%o�
%o�
o�
sX
oY
r)p(*
s�

(�
,
	(�
o�
	o�
&�
,o_
�*R7�
0
s�

repo�
&r�p(�
�o(�
o�
&("(`
,,+r�psV
(#o+o�
8�o�
o�
(+o�

+	o�
(0o�
&	ot
-��
	,	o_
�o�
(+o�
+o�
o�
(/o�
&ot
-��,o_
�ot
:h����
,o_
�o
*(z#�
�*�]��
0�s�

s�
o�
9vo�
o�
o�
o�
o�
tAo�
o�
o�
o�
o�
tA
o1
oQ
@1/r�p(�
�Co
r�pr�poW
(�
r�p{o1
o�
(F
o�
&r�po�
&r�po�
o�
o�
o�
+e(�
	o�
	o�

o�
-)rp{o1
o�
	o�
(F
o�
&r_p	o�
o�
&rmp(�
-���o_
�rspo�
&r�prwp{	o1
o�
(*
o�
&o�
o�
o�
o�
+e(�
	o�
o�
o�
-)rp{	o1
o�
o�
(F
o�
&r_po�
o�
&rmp(�
-���o_
�rspo�
&o�
o�
o�
r�p,�Bo
+r�pr�p(F
o�
&o�
&o
o�
&o
*�r^�r+0	o�

s�
}{o1
o�
,{o1
o�
+a{o1
o�
r�po�
o�
t�,o�
r�po�
o�
t�+o1
o�
{o1
o�
r�ps�
r	po�
&r�p
o�
o�
+d(�
r%	p�%	�%(�
�%o�
�%o
(1�%o�
o�
o�
(2�o�
&rmp
(�
-���o_
�rM	po�
&o�
&o�
o}
1vrS	p(*
o�
&r�p
o�
o�
+#(�
r�	p	o�
o�
&rmp
(�
-���"o_
�rM	po�
&o�
&{o�
>r�	po�
&r�	pr
p(�
(F
o�
&r9
po�
&{o�
8�(�
	o�
	o�
,`ra
p(*
o�
&r�
p(*
o�
&rTp	(*
o�
&r�p	(F
o�
&r�p	(*
o�
&+rp	(*
o�
&(�
:i�����#o_
�rJpo�
&rZpo�
&o�
&o
*(�q8�0�0��0I	o0
o1

rrpo�
,o�
o�
rvp(�

+rMp(�
-r�p**0�s�

o
o9

o
o0
o�
o1
r�p()
,Jo
o0
o1
r�po�
:	r�po:
9r�po<
o�
&8�o
o0
o�
o1
r�p()
,c	r�po:
9�	rqpo:
9�o<
,o<
��+-r�po<
��o�
&+eo
o0
o�
o1
r�p()
,D("s�
(�
,0	rqpo:
, o<
(�
2r
po<
o�
&	r 
po:
,o<
��-r2
po�
&	rF
po:
9�o<
��o�
9�o
o0
o�
o1
rr
po�
,rz
po�
&8�o
o0
o�
o1
r�
p()
,{o�
o�
8�("s�
(�
,ao
o0
o�
o1
r�p()
,@r�
p,o<
(�
/r�p+r�
po<
o
r�
p(�
o�
&+r�
ps�
zo
*
*Js�
}(�
*0�o�
(+,tEBB B&<+@s�
*s�*s�*s4*s:*s>*sD�Cs�
s�
*sG**0(5
,
�%�*(+*r6p*.(9(�
*6(�
o�
*�(
}}}}*03*u
,(B**0O+/Z{o�
X/Z{o�
X/Z{o�
X/Z{(�
,+{o�
X*0M{{(�
,8{{(�
,%{{(�
,{{(�
**0/
uO,o�

o�
(9�(�
s?*0�(�
s7(�
(9s�
(�
(9s4(�
s�(�
(9~�%-&~�� s�
%��(�
s>(�
(9~�%-&~��!s�
%��(�
*0�s�
�(~( sOo�
~( �sRo�
~( �sSo�
~( NsQo�
~( �sTo�
~( �sUo�
*0>(
~(o
o

+(
oM(
-���*o_
�*/0lrdp(
u[
~(o
o
-!rjpo
��o
(F
s	
zoL(

,r�p(*
(
*0)-*u[
,~(o
o
,**6~*(K*�},(
},}+oM*0k#@{-X}-l(
#�?Y#@[
{-{,1
�+*|+(
(


(
s
*"}-*R#N@(
�**Z#Y@(
(K*V{-X}-(L*(J*6~*(K*0Q (L
(

-*(
(
#$@4#(
#$@(
(
s
**&(
*0�!(
o+�(�
r9p(

�
�,(
t
�
%�
(
t(
��%�
�,(
t�(
�]%�(+o+&*:(
}.*>s 
o!
*6{.o"
*(#
*>s$
%o%
*2{1o&
*6{1oa
*2{1o'
*6{1o�
*2{1o(
*6{1ob
*{/*"}/*{0*0H"}0{1t"o)
{0t"
o�
o*
,{1o�
o+
o�
*2{1o,
*J{1to-
*2{1o.
*2{1o/
*6{1o0
*2{1o1
*s2
*N{1o3
sx*2{1o�
*2{1o4
*2{1o5
*�sw%{0}0%{2}2%{1o6
t=}1*2(7
(v*0C#s8

(7
(9
-	(:
-o5
o;
�o<
�o=
o>
*,
Zf}/s?
}1(@
*�(A
}3}4{3{2}5*2{4oB
*2{4oC
*2{4oD
*2{4oE
*2{4oF
*:oG
oH
*"oH
*J(I
{4oJ
*6oH
��*6{4oK
*N{4oL
*6{4oM
*N{4oN
*�{5,{5�o1
*{4oO
*6{4oP
*6{4oQ
*6{4oR
*2{4oS
*�{5,{5�oT
*{4oU
*6{4oV
*6{4oW
*6{4oX
*6{4oY
*6{4oZ
*6{4o[
*6{4oG
*2{4o\
*6{4o]
*0N${4oH

{5,7u-/o^
{5�oT
(_
,{5�oT
(�
*0�u0,G�C(�
(�
,t0s`
�C*��(�
(�
,t0�1���*uo,#��(�
(�
,�osa
��*(,
(b
*0%
+oH
�X
�i2��i*6{4oc
*2{4od
*2{4oe
*r(I
,{4of
(g
*:(�(�*�{8,r=p{8o�
&+rIp{7(�o�
&(�*0D&{:,4{:oh

+
(i
o�(j
-���2o_
�o�*.(�*:(�(�*{=*"}=*{>*"}>*{?*"}?*�(�(�-*{;,{;o/{<,{<o/**0i(�,rQpo�
&o�(�,rspo�
&(�-*u-(�, u-rUp(�(�o�
&*0'{;o�
-
{<o�
*�{;,{;o�{<,{<o�*0K{;o�rep{Ao�
&{<o�{@,rqpo�
&{@o�*�(�{@,{@o�o�*(�*r~Bok
/r{p(*
**0(s�

o�o
*0V)r�p
ol
++om
t o�
&r�po�
&o�rmp
ot
-��us,o_
�*
7D^�%Н(n
�B*r(
}C}D}E*0T',o�{C()
,{Do�{E,)o�,!{Eo�oo
,o�o�*�{`r{p{C(*
r{p{D(*
oW
}`*0�{_,{Hr�p(p
,r�po�
&{I,rQpo�
&{Fo�{I,rspo�
&{_, {Hr�p()
,r�po�
&+rep{Ho�
&{J,rQpo�
&{Go�{J,rspo�
&{_,{Hr�p(p
,rspo�
&*�{F,{Fo�{G,{Go�o�*(*J(sq
}K*0�*{Lo�{_,r�po�
&r�po�
&{Kor

+(s
ot
r�po�
&(u
-���5o_
�ov
Yow
r�
po�
&*8'_0K%o�{L,{Lo�
+{Kox
o�X
{Koy
2�o�*0�%r�po�
&
+Lr�po�
&{Moz
o�r�po�
&{Noz
o�r�po�
&X
{Mo{
2�{O,$r�po�
&{Oo�r�po�
&rpo�
&*0x+{Oo�
+{Noz
o�X
{No{
2�+{Moz
o�X{Mo{
2�{O,{Oo�o�*vs|
}Ms|
}N(�*V(�(�(�*{P*"}P*{Q*"}Q*{R*"}R*{S*"}S*n(�(U
-(�*(�*{T*"}T*0�(�,(�o�+8(�,rp(�(�o�
&rIp(�(�o�
&(�,+(�(�(p
,rUp(�(�o�
&*�(�(�s�%(�o�%(�o�*�(�-s(�(�o
*0t'u&-*u&
o�,(�,o�(�o�
*o�(�(p
,*o�(�(p
,*o�(�(p
,**r(�,(�o�o�*:(}U*0@{_-r�p+rpo�
&r#po�
&{Uo�rspo�
&*R{Uo�o�*0W	{Y-{X+{X(�
r3p{V-r�p+rCpo�
&{Wo�rspo�
&*6{Wo�*�{Zo�rWp{_-r�p+rqpo�
&*R{Zo�o�*�{[o�{_,r�po�
&rypo�
&{\o�*�{[o�{\o�{],{]o�o�*J{^so}
*6{^o}
*05,{^o~

+
(
o�(�
-���7o_
�*&00%
+{^oz
o�X
{^o{
2�o�*Js|
}^(�*B{_�}_*:(�}`*:{`o�
&*"o�*J(�s�
(	*{a*"}a*s�
z�(o�
,((o�
Yo�
**0+%(o�

(X(o�
YYo�
*:(o�
*0m-u.-*u.
(o�
Yoo�
Y
+2(%Yo�
o%Yo�
(�
,*	X%
.2/�*0C.s
(o�
+(�
oo�
(�
-���#o_
�*!3V(�((*{b*"}b*{c*"}c*�(u&o�r�p(-r�p+r�po�
&*R(o�o�*0X(oT
&{;o�)oT
&{d-r�p+r�po�
&(oT
&{<o�)oT
&*�{;u@o,*{<u@o*"o�*0X/ut
s�o�
o�
o	+o�{sr�po�uo-o�
o	+o�o
*(I*{e*"}e*0�0u5oc

(o�
r�po�
o�
t�(U
,^o�
rpo�
o�
t�(U
,o�
&o�
r#po�
o�
t�(U
,o1
r{p(*
*(*0�s�
�fs�
�gs�
�hs�
�is�
�j~frYpropo�
~frspr�po�
~fr�pr�po�
~fr�pr�po�
~gr�pr�po�
~gr�pr�po�
~gr	prpo�
~gr+pr3po�
~grEprOpo�
~grcprqpo�
~gr�pr�po�
~hr�pr�po�
~hr�pr�po�
~hrprpo�
~hr9prGpo�
~hr_prkpo�
~hr�pr�po�
~hr�pr�po�
~hr�pr�po�
~hrpr!po�
~hr7prKpo�
~hrwpr�po�
~hr�pr�po�
~hr�pr�po�
~ir�pr�po�
~ir�prpo�
~ir%pr1po�
~irGprSpo�
~jr_pr�po�
~jr�pr�po�
~jr�pr�po�
~jrpr9po�
~jr]pr�po�
~jr�pr�po�
~jr�pr�po�
~jr�prpo�
~jrpr1po�
~jrUprupo�
~jr�pr�po�
~jr�pr�po�
~jrpr)po�
~jrSpr{po�
~jr�pr�po�
*0�}k~fo�
o1
o�
,(%*~go�
o1
o�
,
~g(&*~ho�
o1
o�
,
~h(&*~io�
o1
o�
,
~i(&*~jo�
o1
o�
,
~j(&*($*0�1s�
o�
r#p(
+}X{X(U
,o�
o1
}Xo�
rRp(+�}Yo�
rtp(+,o�
o�
1r�ps	
zs�r�po�
o�

+6	o�
oQ
1so�{ko	+o�rmp	ot
-��
	,	o_
�}W*�B�
0�2s�

o�
o�
1'r=po�
%Xo�
{ko	+o�
&r�p~fo�
o1
o�
o�
o�
{ko	+o�
&o
s*0�3o�
o�
� 
+o�
o�
{ko	+�Xo�
o�
2�o�
o1

	rGp()
,
('+o�
o1
o�
(�
s*0�(s�

~io�
o1
o�
o�
&rQpo�
&o�
o�
{ko	+ot
&rmpo�
&o�
o�
1 o�
o�
{ko	+ot
&+rpo�
&rspo�
&o
*044uw
s�o�
o�
o	+to�{sr�po�o-o�
o�

+%	o�
tzo�o�
o	+o}
	ot
-��
	,	o_
�{u-s�
}uo�
o�

+U	o�
tzo�
%o	+o�o}
o�
&."o�
t�o�
{uo�
	ot
-��
	,	o_
�o�
,o�
o*}�o
*M1~
�a
0]5(�
s�o�
o�
t�o�

rpo�o�
o�
o�
8�(�
{uo�
:�	,s�
z
o
o0
o�
to7
.5.0	.*
.$.3'o
o0
o�
(+,r4ps+Ho
o0
o�
o1
r�
p()
,&rVpo�
r�po�
o�
(*
sr�p(*
o�o�(�
:�����"o_
�}�*ADF^s�
%r�po�
o�
*:{lo�
*0~6-*,
{lo�
&u@,u@{�(/*u, u
{;(/{<(/*u0,u0{;(/{<(/*J-*o�(.*v{lo�
-*{lo�
*0c7
oo�
2Qoo�
Y+=oo�
,)(0
	,	o�,	*	u@,	u@{�*Y/�*Js�
}l(
*n{po�
,{po�
**068u2
%oy
oy
o�
-3o	+
(5
o
*0p9

u@9M{�u@9;o�o�o�
?"o�o�
9o�o�
o�%{�u@9�o�o�
?�o�o�
9�o�o�
o�(�
:�o�o�
o�9�o�o�
o�u@9wo�o�
@fo�o�
o�9P{�u@
	9>	{�9/o�o�
o�u(	o�o�
@	o�o�
9�9�s�
o�		{�u

-	o�o�
o�	+	
{7	}�o�	s�o�
o�	r�ps�%r�po�%s�%		o�o�
o�s�}W%	{�}V%{X}Xo�o�
o�o�o�o�
o�u@}�*Zo�
(B%}�*0J:o�
o�
o�
o�
o�
o�
(B
o�
(>
o�
o	+}�*0;o�

o�
o�
o�
(B{so�
o-o�
(>o{
o0
t�o�
o0
t�
o�
o�
+Xo�
o	+o�Xu&,.o�r�p��(*
o�o�o�
ot
-��,o_
�8�o�
o�
		u�

-s�
z	o�
%Xo�
o�
s�
	o�
o�
o	+(9o�o�o�o�
Xo�
o�
?l���*pe�0�<o�
o�
r�p(p
,s�
zs�
o�
o1
}Xo�
o1
r�p()
,
rp}X+o�
o1
o�
}Xo�
}V}W*�o�
o�
o�
o�
o�
(=*0�=o�

o�
o�
o�
(�o�
o�
o�
o�
(�
s�u-{so�	{so�}�{so�	u@9�	u@o�oh
8R(i
s�		{�}�	{�}�,$	{�u@{�o�o�(	{�}�	o�o�	{�}�	o�o�	{�}�	o�o�
	{so�{s{�o�{�o-	o�o�s�

	o�

o�o�
	o�o�
{so
o�(U
,	
o�o�

o�o�{s	o/(j
:������2o_
�{s{�o/{s	o/8�	u09�	u0{;,	{<-rps�
z{;u@{<u@%,-s�
z{�u#
{�u#
,-s�
z
{Fu&,6
{Gu&,({Fu&,{Gu&,r`ps-s�
zs�%(�}A%	o�o�
{Fu&%-s�
zo�o�o�
-s�
&s�
{F}F{Gu&,o�o�}G
{H}H%}@{;u@}�{<u@}�%};%}<**A�e	~o�
o�
o�
o�
(=*0�>s�
(�}Ao�
o�
o�
(�};{;(?};o�
o�
o�
(�}<{<(?}<{<u@, {<u@o�,o�
o�,o	+}@*�o	,*s�{so�o�%}�*0Zu@-u0,{so�o�+3u�_,&s�%}�%o�o�%{so�**0b's�s�
o�
o�
,o�
o�
o	+t-o�+rlpso�rvpo�%o�o�
*0J:o�
o�
o�
o�
o�
o�
(B
o�
(>
oz
u�(c*0@?(�
u@,u@*s�u0,u0{so�%}�*no�
(B%{so�*0~@o�
o�
o�
o�
o�
o�
(B
o�
(>
o�
o�
+$o�
o�
o	+o�
so�ot
-��
,o_
�*B0r
01:o�
(B
o�
(>
o�
o	+}�*0�@o�
o�
o�
o�
o�
o�
(B
4(>
o�
o�
+$o�
o�
o	+o�
so�ot
-��
,o_
�o�
(>
o�
o	+}�*>0n
02Aso�
(B
o�
(B%};%}<*Js�
}p(I*�~C
}q}rs2}ss�
}v(�
s�
(L*n{vo�
-*{vo�
*{w*"}w*0!%rzp{r
X}r��(*
*^s%oo�
o�
*0JB{tX}to�
o	+u.
oo�
o�
o�
{tY}t{t1*os�o�{so1,o�o�u9�o�(U
:�{so�o0u@,g+Ro�o�
o�o�()
,(o�o�o�o�o�o�*Xo�o�
2�*u@
u0	,
	o&+
,	o&*0Co�

s�o�
r�po�
,~o�
,vo�
r�po�
,I	o�
u�r?p()
,2o�
rKpo�
o�
u�}6o�
}78�o�
u�s}8+yo�
o�
}6o�
}7o�
rpo�
,o�
,o�
u�}6o�
r�po�
,o�
,o�
u�}7*Zr�po�
(�
s*bo�
o	+u,%o*bo�
o	+s�%o*6s(o#*0�Do{
o0
to7

o�
(�,s*3o�
��-rp+r�ps*s2
(Noi
o{
(�ol
o{
o�
(�o�
(Ko�
o�
s*zo�
o�
o�
(�o�*bo�
o�
r�po�*bo�
o�
r�po�*6o�
o	+*0[Eo�
o	+
s�}L+-o�
o�
u�o�
u-
{K	o�
Xo�
o�
2�*�s�%o�
o	+}[%o�
o	+}\*0Fs�
+>{Mo�
o�
o	+o}
{No�
o�
o	+o}
Xo�
o�
2�o�
,o�
u�-o�
o	+}O*bs�%o�
o	+}Z*s�
z.rlps*0�Go�
634s�%rpo�%o�
o�
o	+o�%rspo�*~C

o�

. YE,."+(rp
+&r�p
+r�p
+r
p
+rp
+s�
zo�
o�
o�
o�
o�*0~Ho{
o0
u�
+Zo�
o�
o	+
	u&,		u&+s�	o�o�
o�
o�
o�o�o�
Xo�
o�
2�*s�
z0,:u@
u@(~-*{�u@(}
*0)I{�uo�
o�s�
o�oh

+!(i
o�,o�o�
(j
-���2o_
�{�}�{�uo�{�-{�}�+6{�,.s�%{�}F%{�}G%r�p}H}�{�({�-{�}�{�(o�-}o�,uo�o~
+(
o�(�
-���7o_
�o�o~
+(
((�
-���7o_
�o�-o�,}o�,9o�o�
+(�
		o�(�
-���Ho_
�o�o�
+(�


((�
-���Ho_
�{�-{�}�*@*.X<W!x���!0�J
,
o�o�
,*{�u@
,
{�u-*{�,{�-ho�,o�-Xo�,o�-H{�,{�-8{�{�3*o�+o�
o�,*Xo�
2�**0K-*s�
o�*0mLo	+u
o�(|&u,,u}9u@,{�u,{�u}9,
{so-*0?Ms�
u�(co�
o�
o	+t}�s�}�*0�Nuu
9�u�9�s�o�
o�
rp()
9�t�o�
(�
o�
o�
o	+}[@�r�p()
9�o�
o�
u�,Eo�
o�
t�r*po�
o
r8pr<poW
(*
s}\*o�
o�
@)o�
o�
uu%9o�
o�
uu%9�o�
o�
rBp()
9�o�
o�
rBp()
9�o�
o�
u�,_o�
o�
t�rZpo�
o
r8pr<poW
(*
s}\o�
o�
o	+}[*o�
o�
u�%9�o�
o�
u�%
9�o	+}\	o	+}[*o�
o�
@�o�
o�
u�%9�o�
o�
u�%
9�o	+}\	o	+}[*:drhp()
9To�
o�
u�,6o�
o�
t�	rlp	o�
o
(*
s}\*o�
o�
u�%9�o�
o�
o	+}\*o�
o�
rxp()
9�o�
o�
uu

9�
o�
o�
r�p()
9�
o�
o�
u�,v
o�
o�
u�t�o�
o�
3Jo�
o�
o	+}[rZpo�
o
r8pr<poW
(*
s}\**0PO(�
,*s�%}H%o	+}F%(�}I%o	+}G%(�}J*0�P{Hr�p()
9�{Fu$
{Gu$-G{Fu#-*-"{Gu#
	-*	(�,M*(�,<*-%{Gu#-*(�,*(�,**�{L{Lo�
,){_{_3{_-{K{Ko�
**0�Q{_{_3|{_-t{Hr�p()
,b{Hr�p()
,P(�,B,?(�	,1,.o�
,%s�%}L%{Ko�
%{K	o�
**0WR{_-M{Hr�p()
,;(�,-,*{Lo�
,{Ko�
-{Ko�
**�{Gu&Q{Fu-QP-{Gu-Q{Fu&Q*0So�

.
+..3**0Tu�
s}xo�
o�
o	+o
{sr�pouo-{u-s�
}uo�
o�
+io�
tz
o	o�
o	+o}
	o�
%o	+oo}
o�
&.!	o�
t�o�
{uo�
ot
-��
,o_
�o�
o	+o}xo�
,o�
o�}�o
*eu�
08U(�s�
r�po�t�o�
o	+o�%}�*0}s�%}H%o	+}F%(�}I%{Fu&,{yt�o�
o�
%o	+}G%{Fu&,{yo
&%(�}J*0oVs"
}�{x,R{u{yo
|�o�
,4{�u-,'(K�#s
o
,o�
s*(V*Js
}y(I*sX
*�r�po�
,r�pr�poW
**0G	
,/r�pr�poW
r�pr�poW
r�pr�poW

r�pr�poW

*0�~�%-&~��&s
%��(+(
+>�~�%-&~��'s
%��(+(
+>�s
%~�%-&~��(s
%��(+o	
%~�%-&~��)s
%��(+o	
%~�%-&~��*s
%��(+o	
**0DWs1
}�{�(+�2s

~�%-&~��+s
%��(+~�%-&~��,s

%��(+~�%-&~��-s
%��(+(+}z{�(+�3s
~�%-&~��.s
%��(+~�%-&~��/s
%��(+~�%-&~��0s
%��(+(+}{{�(�(
*0"Xo
(�o
s

(
*0@o
(�o
o
(�o
o
(�o
( 
*0Oo!
r�po
(�r�p(�
o!
o"
o#
o$
-rsp+rpo!
*no%
(�o&
('
*0jY
o(
,,o)
(�o*
o+
o(
t�s,

+o)
(�o*
o+
s-

,	(.
*(/
&*no0
(�o1
(2
*0oo!
r2po!
o3
o#
o4
-r�p+rBpo!
o5
,r�p+r`po6
(�(*
o!
rspo!
*0�Zs4
}�}�}�{�o7
(�s8
{�o9
o:

+	o;
o9
o<
	ot
-��
	,	o_
�{�o=
o>
{�(?
{�o@
u�9�oA
o
rxpoB
o
oQ
o
rxpoB
YoC
&{�%oD
XoE
{z�5sF
(+(+�6sG
oH
{{�7sI
(+(+�8sJ
oK
{�rxpoL
{�%oD
YoE
{�o!
*D!e
0"[oM
(�oN
sO

(P
*0@o
(�o
o
(�o
o
(�o
(Q
*no0
(�o1
(R
*no%
(�o&
(S
*0\oT
(�sU

(V
*0"]oW
(�oX
sY

(Z
*0(^o[
(�o\
o]
s^

(_
*0"_o`
(�oa
sb

(c
*(d
*{*"}*{�*"}�*{�*"}�*{�*"}�*06se
}|sf
}~sg
}�(h
{~r|p��s9oi
{~r�p��s9oi
{~r�p��s9oi
{~r�p��s9oi
{~r(p��s9oi
{~rRp��s9oi
{~r|p��s9oi
{~r�p��s9oi
{~r�p��s9oi
{~r�p��s9oi
{~r* p��s9oi
{~rP p��s9oi
{~rv p��s9oi
{~r� p��s9oi
{~r� p��s9oi
s�
(�s�
(�{~r� p��s9oi
{~r!p��s9oi
{~r:!p��s9oi
*0z`s�

se
}�(�
oj
}}(+~�%-&~��?sk
%��(+(+02(+~�%-&~��@sl
%��(+(+15(+~�%-&~��Asm
%��( +(!+}�on
+Voo

{~	o^
o�
op
-	o^
o�
sq
z{~	o^
o�
or
	o:os
ot
-��
,o_
�{|ot
19{|ou
+(v
os
(w
-���fo_
�*�b'
Lj0�a-r:!ps/
zsx

s�
sHoy
("+-*rj!pr�!po�
&o�
&o�
&r�!po�
&o�
&r�!pr�!po�
&o�
&r"po�
&r("po�
&o�
&rj"po�
&r�"po�
&r*#po�
&o{
o|

+K	o}
oMoK(�rx#prM	p(�
o�
&r�#po�
&o�
&	ot
-��
	,	o_
�r�#po�
&r$po�
&r�#po�
&o�
&oy
o~
8�o
o�
o�
9�rL$po�
r�$p(�
o�
&o�
{�o�
o�
+3o�
o�
		rxpo�
-	rxp(�
		o�
&ot
-��,o_
�r�#po�
&o�
&ot
:D����,o_
�r�$po�
&o�
&rZpo�
&o�
&r�$pr�!po�
&o�
&o�
&rj!pr�!po�
&o�
&o
o�
*(�W
�@�a�$0�c-*sx

r�psHo�
o�

8�	o�
o�
E
"+(s,+<s+4s�+,sH+$s!+o�
��o
sq
zoMoK(�%o�
r�$pr�poW
rxp(�
o�
	ot
:F����
	,	o_
�*#��
0�do�

8�o�
o�
3+Po�
r8po�
o
r8p(�
oW
Q+]o�
3:Po�
r�$po�
t0(�
r�pr�poW
(�
oW
Q+Po�
o�
o
oW
Qot
:\����
,o_
�*��
0�es�

sx
(�
oj
}}r�psH&o�

8�	o�
o�
E/ >+Is,oM+:soM++s�oM+sHoM+
s!oM%o�
r�pr�poW
rxp(�
o�
	ot
:X����
	,	o_
�o�
*1��
Nsx
%(�o�
*0qs�
%r�$po�
r�pr�poW
o�
(�(F
o�
&%r%po�
&%o�
o�
&%r%po�
&o
r�pr�poW
*0tfs�

o�
+4o�
r%po�
-r2%p+r8%po�
(�o�
&ot
-��
,o_
�o
o
r�poB
o�
*
@M
0�g~{}o�
o�
o1
s�
o�
&��%r
p�%r+p�o�
(#+,/o�
(�
,r@%po�
(�
��o�
&o�

(�
,Bo�

(�
,2r�po�

(�
��o�

(�
��o�
&o
*0�hsF
}�{�-*{�o
(�sx
{��Gs�
($+(%+�{�o
o�
_rN%p�%{�o
(��%{�o
o�
�%{�o
o��%-r�p+r�%p�(�
o�
*�-*sx
s�
&%r�%poM
(�oN
(F
o�
*0�isI
}�{�-*{�o*
s�
{�o)
(�{��Js�
($+(%+�{�o*
o�
_
��%r�%p�%{�o)
(��%r&p�%o�
�%r0&p�(�
o�
&o�	-r�p+r�%p(�
o�
&sx
%o
o�
*0�(-*s�

��%r6&p�%o[
(��%r�'p�%o\
�%r�'p�(�
o�
&o�
&��%r�'p�%o[
(��%r;(p�%o\
�%rQ(p�%o]
�%rY(p�(�
o�
&o�
&r�(po�
&o�
&r�(po�
&o�
&r�(po�
&sx
%o
o�
*0gjs�

o
oQ
@1-r�p(�
�Co
r�pr�poW
(�
��%r�%p�%o
(��%r	)p�%(��%r/)p�(�
o�
&rQpr�po"
~�%-&~��Bs�
%��(&+(�
r�p(�
o�
&��%rO)p�%o
(��%ri)p�%r�po�
~�%-&~��Cs�
%��(&+(�
�%r�p�(�
o�
&o$
,rs)po�
&sx
%o
o�
*0k{}o�
o�

s�
o�
-~o1o�
&rspo�
:�o�
��(�
(�
-$o�
��(�
(�
,<o�
o�
,/o�

(�
,r@%po�

(�
��o�
&o�
(�
,Jo�
(�
,9r�po�
(�
��o�
(�
��o�
&8r�p()
-rup()
-r�p()
9�o�
(�
,Go�
(�
25r@%po�
(�
1+o�
(�
��o�
&o�
,yr�p(�
,rup(�
-]r�
po�
(�
,o�
(�
/r�p+'r�
po�
(�
(�
r�
p(�
o�
&o�
o�
(�
-+(�
-Qr�)p(�o�
o�
-o�
,	o�
3o�
.r�p+r�)p+r�)p(*
o�
&o�
,X��%rp�%r%p�%r	*p�%r7p�%r?p�o�
(#+,r*po�
&(�o�
o�
o�
(U
-r?*po�
(*
o�
&o
*00(s�

rY*po
o
o�

sx
%o
o�
*0lsL
s�
r�*po�
o4
,r�*po�
&o�
r�*po�
&,o
r�*p()
-r�p+r�p}�r�*po6
o0
(�o�
&r�po3
�Ms�
(&+(�
r�p(�
o�
&o�
r+po�
&	,	o
r#+p(�
0r/+p+r9+prE+p(�
o�
&sx
%o
o�
*�sx
%rS+po0
(�o6
(F
o�
*0?msN
}�s�
o7
(�(�o�
(�o�
(�-s�
(�(�o�
-(�o�
r�+pr�+p(�
o�
&o7
(�o=
,!o=
o�
('+��s�
o�
r�po9
��s�
((+(�
o�
&s�

o9
o:
+Po;
o�
3=o�
,4o�
r�p(�
- (�o�
o�
,	o�
ot
-��,o_
�	o�
9s�
r�+p(�(�(*
o�
&r,p(�(�(*
o�
&r�,po�
&	+)		o�

r�,p
o�
(*
o�
&	X			o�
2�r�,p(�(�(*
o�
&r5-p(�(�(*
o�
&r�-p(�(�o�
(F
o�
&rpo�
&o
s�
{|o�os
o=
,[r�po�
&r.pr�po=
o�
~�%-&~��Ds�
%��(&+(�
r�p(�
o�
&r�p}�(��Os�
o�
{�{�r�poB
o�
o�
&r8.po�
&sx
%o
o�
*�]J�sx
%rz.poT
(�r�.p(�
o�
*0�(s�

r�%po%
(�r�.p(�
o�
&r�.po�
r0&p(�
o�
&o�
o�
1Jr�
pr�po�
~�%-&~��Es�
%��(&+(�
r�p(�
o�
&sx
%o
o�
*0�ns�
o�
r�.po�
&,o
(�
&,[o�
o�
3M
s�

	o�
o�
o�
o%
	s-
o�o�
r�.p(�
o�
&sx
%o
r�.po%
r/p(�
o�
*05(-*s�

r8/po`
oa
o�
&sx
%o
o�
*
*zsx
%o�
o�
%o�
o�
*�r�po�
-
r�poP
,r�pr�poW
**6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�o�*6u�(�*6(�o�
*vr�.po�
r0&po�(�
*{�*"}�*{�*"}�*�rp/po�
&(�o�(�,r�/po�
&(�o�*v(�s|
(�s|
(�*{�*"}�*{�*"}�*{�*"}�*0�{�,{�o�o�
1r�/po�
&r�/po�
&(�o�(�o{
1%rQpo�
&(�(�rspo�
&r�/po�
&rQpo�
&(�(�rspo�
&{�,r0po�
&{�o�*0�oYE
O;	O"+Mo
*��
r0p(,
(�
*�&r0p(,
(�
*�p(,
(�
**0Gpo0
to7

YE
+**0�qo0
t
o7
E"%
+&********	*
******r0po7
�(*
s	
z0Oro0
to7
.*��
(�
(�
 �/ �s�
�o*�o*rE+****0Rr�p()
-ArH0p()
-4rhp()
-'rL0p()
-rR0p()
-
rX0p()
,**0�03.{
YE	ZZTZ*6ZH+XYE+
%. +<r�p*rH0p*rhp*rL0p*rR0p*rX0p*r^0p*r~0p*r�0p*r�0p*r�0ps.
z0BuA,tAo�
*u',t'o�
*u�,t�o�
*s�
z0'so�
o�
,o�
�}*�}*j(�s�
(�}�*{�*"}�*{�*"}�*{�*"}�*�(�-s|
(�(�o}
*�(�-s�
(�(�o�
*0<(�,rQpo�
&r�0po�
&{�,r
1po�
&(�(�{�,r 1po�
&{�o�{�,r01po�
&{�o�(�,rD1po�
&(�(�({�-{�,Nr^1po�
&{�,rn1p{�o�
&{�-rx1po�
&+rIp{�o�
&(�,,rspo�
&(�,rUp(�(�o�
&*�(�-*r�1po�
&(�(�*�(�(�o�
-((�,o/(�o-*0-t{�-s�
}�{�(
{�u,6{�u{7o0-{�u{7{�o-
oh
8�(i
o�o1
	o�o�{�o�o�
o�
,&o�(o�{�o�o�
+{�o�o�
o�
(�o�
(j
:r�����2o_
�,{�u{7{�o.*j��0�?o�o1
o�o�{�o�o�
o�
,&o�(o�{�o�o�
+=o�(U
-{�o�o�
o�
+{�o�o�
o�
(�o�
*0�us�

u,
u(*u-u0,ku0,{�{vo�
{;(
u,{<,{<(o�
u09 {�{vo�
&8
u@9�u@o�oh

8�(i
o�o�(U
-	o�+o�s�{�oJ35o�o�o�o�o�,>o�o�+.o�o�o�,o�-o�o�o�,
o�o�o�
(j
:1�����2o_
�*s�
zo�(U
-Lo�{�o�(p
,4oh

+(i
o�o�(j
-���2o_
�*�֊��0|vs�

{9o0
(�o�
+Ho�
o�o�
s�
	o�
o�	o�-{7+o�o�	o�
ot
-��
,o_
�*Tp
09w
o�
}�r_p��(F
{�o�
-*X
+�0gx{�-*(�oh

+2(i
o�
,!o�(U
,�+o�o��(j
-���2o_
�**?U0�0.#.{.A8�-.(3.<4.A8�{�-(�o�
�**(�o�
�*{��*{��*(�o�
-(�-
(��**(�o�
-(�-(�-
{��**s�
z0y{�,{�o�(�,4(�oh

+
(i
o�(j
-���2o_
�{�,{�o�{�,{�o�{�,{�o�(�,4(�o~
+
(
o�(�
-���7o_
�(�,4(�o�
+
(�
o�(�
-���Ho_
�o�*((B����v(�s|
(s|
(*{�*"}�*{�*"}�*{�*"}�*{�*"}�*0�zr�1po�
&(o�r�1po�
&r�p
+Bo�
&(oz
o�r�po�
&(oz
o�rmp
X(o{
2�(,r�/po�
&(o�{�,r0po�
&{�o�*�~�-r�1p�B(�
o�
s�
��~�*~�*��*V(r&2p~�o�
*V(rr2p~�o�
*V(r�2p~�o�
*V(r�2p~�o�
*.s��*s�*"sX*ro�
{�u-{`()
*.s%��*Zo^
й(�
(�
*Zo^
�(�
(�
*Zo^
к(�
(�
*�o^
�(�
(_
,o^
к(�
(_
**"s�
*vo�
o7
o�
o
o�
*Jo�
o�
s�
*"s�
*vo�
o7
o�
o0
o�
*Jo�
o�
s�
*2{�()+*2{�(*+*B(�
{��*f{�(�
{�o�
*B(�
{��*f{�(�
{�o�
*.s>��*
*Fr�.pr�.p(�
*�o�
�Hs�
(++(,+�*^{�o
o�
()
*�o�
�Ks�
(++(,+�*^{�o*
o�
()
*^r�.pr0&p{�(�
*�{�{�(�o�
,r�p+r�2p(*
(�
}�*BSJBv4.0.30319l�[#~\H#Strings�3#US(�#GUID8�)#BlobW��)	�3'O�O��z>d�,� :7�:7�x6�7�,��,��,l�,8�,Q�,�,��6,�6h�,��,�:7��,nz77�:7�=7"�x6�x6Px6
�B�/�1� 
|�!
^�!
�>�!
�!
*
�!12�C
�>�!�-�?�#�/
�6�/-$7"����
~.�/
�B�/
��7
L.�!g�z� 3�/
a3�!�
5R3�?
��7
'�7
��!
��7
��!
51�!a-�/�7"
�,�!2�?n��?
�2�!
�>�!
	�!
��!
,�!�	7"{
5
�G�!
(4�/�7"��
o>
l4>�F�/
�3>
DE>
DvG
�1>Y"7"
�+vGt7"
�5 !27"
-D$G
�E>��,_
5�"7"X/7"/�?
?2vG�&R;�3��7"��C�3���/�7"�nP,�/�,�/&n]1�/�4nxD:�"^{D:�,l1�?�7"�7"�4�;��;�7"
��7
N&�7
_$�7
��7
��7
H�7
]�7
��7
��!��
c
�7
:'�7
�&�7
�'�7
��7
��!
��7
��7
&�7
(�7
�%�7
�$�7
v'�7
�'�7
i�7
O'�7
�&�7
�%�7
u�7
�$�7
z(�7
�%�7
�G�!
�$�7
�'�7
f(�7
a'�7
c&�7
�$�7
�&�7
�'�7
�%�7
L$�7
%�7
'%�7
�%�7
$'�7
�%�7
l$�7
�&�7
+&�7
I%�7
%�7
8%�7
(�7
Y%�7
�'�7
o%�7
�&�7
��7
hF>
45r#
�( 
�* 
g* 
T* 
�+r#
�) 
�3Y8
+ 
** �3�
D  
* 
�* 
�* 
C+ 
4) 
) 
�) 
�( s7"
@ !
s) �+
s+ 

�7����
Z) 
P  
�) �7"�?7"A7"mn�>7"�-n
m�!
*"�!:�2Qx6~2z7?0�+�� �� 7"6��7"�17"
�.&D7"�.7"�.7"B/7"�7"�7"�"7"�E�,�!��1��1��1�!_ 
)�!
@
�!�1�/�B�?+-n�n
�,�!��0
B�!
��!

1�!
1�!�A7"07"�B7"
0�!K0�,�F�?
I�/+8�/r7"�
�?/7"�7"
TD$G
��+�(R;��,^7"V0�,40�,�&R;�'R;�R;^,�?-�?�D:7"� 7"�07"�<:7E7"K7"�.7"
+(�7
=(�7�7"
+ 
_+ 
�* �37"
`) 
�  ���7"
��!�^UGU]UC�?ef7�?U �6�?�"T4dGU5�dGU8�4dGU;�3dGU=UEdGU?
GdGUC�dGAE�+dGE(E�EdGY(F�>"dGU)JdGD.O9dGD.Q�dGD.R�dGD.S�dGD.T�dGD.U�dGD.WDdGU.X�2dGy.Z�dG�/_j1dG�3x]@dGx6��fAdG�;��@dGx@���@dGUB��86dGC� 6dGUC�tAdG�F��@dG�K�}@dG�M��@dG�P�1AdG�U�AdG�V��@dG�Z�P@dG�[�YAdG�^�k@dG�_�@dG�`�AdG�aLAdG�b�@dGxda5dG�e�5dG�e�4dGUf"�5dG�l)!dGUl-8dGAm3�5dG�p3��5dGqIQ5dG�x�}FdGUz�5dG�z��5dGM|�
@dG���@@dG���zdGU��0@dGx���?dG���7�8U��U�!�U�U�"!�U�$U�1�U�4�2A�9!�U�=wU�F�U�IEU�LRU�N-y�P!�	=!�	=!�	�!�	=!�	�_#�S��0|S�R�Q��Q��Q��Q��Q��Q��Q��Q�{S��S�73�
��j9�=;�Q���!��!��!?�!hE�+V��F�V��6�V�hF�V��6�V��5�V�o�V�l4�V��3�V�-D�V�DE�V��E��"�T�4��D�M8?8!,���-����9����1��9�\���JF���J;�*?�K?�4
�
�
�n.���2<���%��:�*?�K?�
6�&?�G?�[C��A��"�" ��
�J
��
�<�U�A��>��A���z	��A��A�,0��P=L	���Y���
��>��
1�;�1�;�1�;�1	<�1<�q50 +V��#*V��#*=/s6�CB'9� :>$<KU;>�j	_�=i:{	=�*C��2�u�e
�H#�����y;�=��
�=�'�>>����:��5T"����[?�w0�w���>�=�Y��
�>>��"�x�3�6��)����6����������y��	%�AnX�j�;��(��3�6:�6��������)�3�����}0�}0�i2��6�6:�P ���X �6�h �[:�� �X�� �`t!���!�]�!!�6f8!�[:�!�X��!�`tH"���P"�_D�X"�6fp"�[:��"�X�	�"�`t	�#�6	�#�<C�
�#��(�
�#���#�l/��$���@%���*�I�
**�6�H*�i�x*��A��*��A�*��A	*+��%=0+�vB�+�6�+�$,�#$
,�6&,�x.*�-��96(.��9?�.�{9H`/�#n x0��B�!�0��Q"81��=a%�1�Q(�2�_Bu+�3��Bq-�6�vBx.�9��/<:���0�<���2�<�63=��
�3�=�Z7�5�+�67�=�	�t7�=��v7�+�67�=��F�7�+�68�=��"n8�+�69�=�6�9>�[:�=8>�X�>�>�[:�>�>���?�+�6@,?�6@�?�6&@d@�6@�@��D�@8A��"�AmA�6B{A�6�B�A��D�DB��>D B�6&D5B�6DLB��D�DbB�6DjB�6DjB�6DbB�6DbB�6DxB��D�DbB�6D�B�6`D�B��nFxC�6�G�C�H�C�K�C���L�C��2L�C��CtN�C��CN�C�nC�O�C��CO�C��3P�C��OP
D��=QD��QD�L-R(D�]-R|D�:,S�D�L,S�D��,�T�D��
]T�D�cT�D�
 U�D�3�U�D�V1&U�D�XF�V�D��0AVE��VE�AVHE��/VXE��5V�E�6W�E�6>W�E�0�YF�4B�YF��==Y F�?	=Y-F�V	�Y:F�!"GYIF�!"�ZRF�%[eF��"3	[sF���\�F��9�]�F��0�b�F�Q<�c�F�x�h�F���i�F�}�j�F�A�kG�
5�lG���l6G��=�mDG��	�nRG�$�o`G��	pnG�a	q|G�T�r�G���s�G�
	t�G�}�t�G���uH��Lv�H�
:Tx�H�� 3	y�H��?=z�H��=z�H�+zI�6{ I�]!Z{`I�XBa|�I�6}�I�6}�I��t~�I��~�I�#	=�I�1	�I�
	=�J�	�
J�r0h�FJ��!Z�HJ�]!Z��J��8o��J�XBa�K��!Z�oK�XBa��K�6��K��2��]!Z��K�`t��K�QCx��XBa��+�6�LL�6&��a?���a?���a?���a?���a?���a?���a?���a?���a?���a?���a?���a?���a?���a?���a?��dL�6��FJ�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?���L�a?���L�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?��FJ�a?��M�]!Z�N�XBa�DN�6�LN�6�`N�]!Z�O�XBa�\O�]!Z�P�XBa��P�6��P�6)��P�����P�����P��t��P����P��t��P����P�S6t��P�c6�Q��t�$Q��A�,Q��A�8Q�]!Z��Q���Q��C�R�[:���R�XBa��R�6���R�]!Z�S�XBa�$S�]!Z��S�XBa��I�6��S�]!Z��S�XBa�DN�6��S�]!Z�T�XBa�DN�6�GT���ZT����hT�]!Z��T�XBa��T�6�U���FJ�]!Z�FJ�XBa��I�6�U�6�+U�]!Z�:U�XBa�CU�6�VU��8�^U��8!�gU�]!Z�nU��Gt��U�O"��U��G��U�[:��\V��FJ�XBa��V�6+��V��#���V��#���V�o=��V�}��V�]!Z�'W�XBa�<W��!Z��W��#3��W�XBa��K�6��W�o:�8X�6�@X��3�HX��O�TX�o:�8X�6�Y�6&��\��A�h]�.M�p^�8.M�_�.V��_��
f��+�6�D`�o:��a�z!m�(c�6��8X�6�@c��y�Pc�*y��c�*���c�@A��d��8��{d�6��d�x>���d�o:��d��D��lg�a?���g�a?���g�a?��xi�).��j�a?��0j�a?��<n�a?��\n�&��o�-�Lo�'F�o�a?$p�a?|p�>	�p�a?)�p�a?2
�q�a?;�q�a?Dxr�a?M�r�6�r�6s�i0V s��<\(s��<ggU�o:4s�0tas�a?s|s�a?|�t�a?��u�a?�v�a?�+v�a?�Dv�a?MTv�a?�w�a?�!w�a?�:w�a?�Sw�a?�dw�a?�gU�a?� �w�a?�!�w�a?�"�x�a?�#�x�a?$�x�a?%�x�a?&xy��$'�x�a?()�x�a?1*�x�a?:+�x�a?C,�x�a?L-�x�a?U.�x�a?^/�x�a?g0z�a?p1gU�a?y2�x�a?�3gU�a?M4gU�a?25gU�a?D6gU�a?�7gU�a?8gU�a?9gU�a?;:gU�a?�;gU�a?�<gU�a?�=gU�a?)>gU�a?�?gU�a?�@z�N>�ADz�^>�B�|�->�Dt}��E�}��'�I~�z!mL`~���ND��P(�Q���^"�T^��(=�U���?=�W8���@�Y���o"	[؄�z&^��o:_<��z!m`���P(�b��a?�e���6f���n-f�+�6g���mDgć�R!&h���;,j����k`����q�����s܊���u7���wT���-yʋ��<{���<}d�������/�0���9�|���C�����M�����]�܎��m������@�����n��6�v��@9�~��U9!����Zt����i����b:����x:!�����:�����:!����6����������?�t���H�����<Q�\��E_�l���m�����v����
}�������t�����D�����x�����l�����l����������������8�����W�����������ܧ������������������� ����� �ĩ�� ���mD���h ���� �-��� �;��� �I��j �W��� �e��_ �s��� ����� ����� ���� ����� ����� �Ǫ�� �ժ�Q ���� ��� ����� �
��@������9���>��A���>��J����R����[��]!Z�gU�XBa��I�6����6�����>' �����>��ī��<, �̫��<7 �ի��9, �ݫ��97 ���]!Z�gU�XBa�����C �H��tJ ����jP �@���X �����-_ �����5����6h ����'9o ����G} ��+�6�C��6� �^���:� �f���:� �o��~D, �w���D7 �����D� �����D� �����D������D��԰�]!Z����DZ�@��r0h�|��;h�ȳ��#� �x��A� ����a� �4���|���#3��� � �ȸ�XBa���6�&���>��.���>��7���8, �?���87 �H���9, �P���97 �Y����a����l��]!Z�gU�XBa��+�6�7��z2� �c��`��j��l� �r���-v�����v�����	v����{v�ʻ�6&��+�6�ֻ�2� �ݻ��� ��+�6���j!���6&��+�6����!�&���!�=��!�&���!�T���!����"!����'%!����3!����K!Ǽ�w^!���l!�+�6���[�!����!�+�6��[�!#��O�!=��8�!	N��#�!
�6��� 
���!���!h��6&�+�6t����!t����!t���"w��3w��=w���w����+�6���[
"���O��+�6½�[
"��O��+�6���[�+�6��#��a�cD5$����
3�A�A�0�>A5$+C

����-_#�-�C�,�-�C�,�-�C�,I#�,��>��#?1���E��E�-�-��@iE�2�2<DT/b/N8�D-GN2�,s2gDRB���4�"�|1������>s2?���>s2?���������������a:���!K6�'�!�!59K6�!K6�	�!iC�!K6\\\\\\\\\\\\\\\�&�:\\\\\\\\\\\\\\\�!K6�!K6�!K6n��!�=K6\�!K6�!K6�!K6�!K6�=�=�!K6�!K6��!K6�!��G=K6�#��!K6�!�#K6
@�2@@�6@@�K��A��A�A��A�C�(�(�(:��(�(�(/?Q?�j.�>t
�A�B�(�(@���(�(�(�(�(
�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�>�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(�(\�3�2�>['��:@���/?Q?}0/?Q?}0N?>?/?Q?NWNTQ@�/?Q?}0�(A��!=<�;��;8 ~ �
J�)�3�*�3�*�3,+�3?*�3|*�3|*�3�(�3*�3�*�3�*�3[+�3G)�3!)�3�)�3�(�3�;I#�)}0�!�<8,3I#}0f0�<�!}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0�}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0}0!��!K6�!K6����{}0t
�:��5\\�!�!''�#'�C���#t
K6�!K6-G~0�+�+�+�+�+�avv�cDvv���a�cD>�
}0}0O>�?�:�:@:����!!�!	%
)15�"�:�	666
)61696A6I6Q6Y6a6i6q6y6�6�6�6�6�6�6�6i6�6)�6�6/�	=�6g?R[:\Xd�`t�=x,�	=,�	�4g?R4[:\4XdD�	=D�	��6�JG��=�6���6�!6)6�����t�?t�H�L�E
16L!"�&
�p��<$T�4��=��A�,E�,O�YX�"��B|T!"��G��p�93��=�Q�E�Q�!����a6���q6�i�ti%Y%�:���6(<����G�)6�
�6�m#��#t6�4��4��=�+)JG�C�O�H.VQ�<\\
5zdB�B3�l/E�qq�-�l��q_�Y�<�t�4y�tyd�y��<�1����C=|
5��B���C=!�.��@F��,�l��Z<�*B��!"+���l����<
A):R�t�6���X16)!#n!_Bu6�t��t�,�6}����6�,�=���=��*B��6���=����CXF�6��yHD��=���:��
5z�B���<�l%�
5z�B����
5z�B���csE==��!"+�9��!"+�s���8��	��=��!"�
5��B���<��t��4�=���C=f<�!"+��4�	�G6��E
��8T!"���A��f6�=n	�8���v��:��=z�
5�B��C=*B�
5�B��C=%����?t�����)6�)�����[:�%����=��6�6!6�t�3�	6$6�,6���G�F)!70!/#n�X��
�9JG>[:��[:Hy7EtqYU9�[�6�>4d��Fk�&7s��F{46���5��4�<6��*D�D6D�f�6D�9�L
5�TB�T�C=)�(�K1�D���t16\�=9PD8��6>9�#8��6B\6�\����W�6`��n��GuQ|3�d6�Y��A�tY��Q�G�d��QDD�Q3�l�E��66�t��g?'	6-	��CtnC��3�=-?�M=��CF�,J�*,P��<W�
]c
 �6��1j�0A�AYs|6YJG�Y�	=|�?�|5/�|	|t��66A6A0�A4B�A�==A?	=AV	�A��A���1�A%A��A�9�A�0�AQ<�Ax�A��A}�AA�A
5���UA��A�=�A�	�A$�A�	Aa	AT�A
	A}��YU9VG>6	�6	��$	A� 3	A�?=A�=q+A+�
5��B���C=F[	�
5��BA��Dq	��VG��6�
5��B���	��C=����!"+�*B��!"+�*B��6����
5��B���C=�6!"+Bd���B�	��>�	�=$�XB�	�v��t��-V�Z=2
�*B��
5z�B��!"+�=r
��9�
�
5z�B���G�6���P
�
��G�
��f����>�
���
��!6��t�:
��f�*
��E
�!"�6*B�X��*B��!"+�A�����A�C�	�3t���v	�Cv=$3t��Dt	�=2
	�9|!"+�8�!Z=2
*B�)�-V)�>=1�=�!"+9�C�	9F�	�6[:�A?�	A4?�	AX.IZ=2
��C�	Y�C�	Y[2$
5z,B�a=$ao=i�AiW?q�C�	q[2q*B�?�4?6466|64*B�4X��3t��
�4�`��t��2g��t�t��Aq�v|��qt�!"�HC2
a?������A�0�"2
�"2
!Z=2
16�6��f<
5�DB�D�C=��@
��i
��:
y�9�
yvy�L��L|0�LX�T6�|��
L6\6���
�LBd6d�i
l6�t6��FK|6��6���>��bC��6��6��6��6������t��#��6�����;t�N�{t����t��������(;������=	�t	���<��t��#���=�6�6#��-��7		�t		��<		�:��=		\=		�t��t�6^��:d�
5z�B������E���E������3��.2B�*���?���?�6��6�����6��6��������t��t�6(��/��9��C��M	�t	6^��]�tUt6(��m�t�t�t6}���!�t!�t!6(����6�6�66�6��f!C�6�6�6�$
5z,B���E
�6�!"����*B��
5�4B�4�C=169�;��F�98�<
5zDB�L
5zTB�Aj;�\*B�A�t���d
5zlB�1B!t�1J!I�7t
5z|B�Q
<�
5z�B�qTbq�A	`h	�t	�<�	�!t�
5z�B�qs3=!	�t�=�!	�I���4t��:�!	�!	�#���=!	������6���G=�= �6��#=�;�!	�t�MU9
E=A`t!	���d��=�s?�!	-!	f!t�h=������0	�:�t6����6��6����*B��!"+y6^	�t�*B�I3��6��!"+!	��=
yB!tyo,=1�,`1	`�`%��Ay�0�y6G9	�8��6<6<��3t��E
4����i
4|0��
5z�B�9�E��6��}�6f��]�[:�6f6f��_D�6f/E������/E�����<$6�� �$�(,	04�8<	@DH\"tOxT|�Y�^�c�h�m�r�w��Y�T�!��(.�".�".�".#�".+
#.3.#.;4#.C@#.KW#.S.#.[.#.c�#.k�#.s�#.{�#.{j%.{�&.�Y(.�d(.�o(@�TA��(C�T`�Ta��(c�T��T���(��T��T���(�T �T@�T`�T��T��T�T �T��T���(@�T`�T)��"I��"��T��T��TC��(C�TC�Tc�T��T��T��T��T	�TC	�Tc	�T�	�T�	�T�	�T
�T!
�TA
�Ta
�T�
�T!�TA�Ta�T��T��T��T�TA�Ta�T��T��T��T�T!�T��Ta�T��T��T��T�T!�T �T@�T`�T��T��T��T��T�T �T@�T`�T��T��T��T�T �T!�T !�T@"�T`"�T�"�T�"�T�#�T�#�T`)�T�)�T�4�T�4�T5�T 5�T@5�T`5�T�5�T�5�T 9�T@9�T`9�T�9�T�9�T�9�T�9�T:�T :�T@:�T`:�T�:�T�:�T�:�T�:�T;�T ;�T@;�T`;�T�;�T�;�T�;�T�;�T<�T�<�T�<�T�<�T=�T =�T@=�T?�T ?�T@?�T`?�T�?�T�?�T�A�T�A�T�A�T�A�TB�T B�T@B�T`B�TOAj�����`����1G^���i��9N��#+Ih9y	/	8	U	a	g	�	�	�	�	�	�	

X
h
y
�
'GM�����(:Rm{�����



E
K
t
�
�
�
�
�
�
F"Wgw��U�Bn���&Ht��,18Q\m�����		
&."/$2&7'8(<)=->/@2A5B9�"�"a"�"cD"'$"�$"�("�,"D$"�C2"�6"�<"a-@"P,F"�,L"R"42"8B2"�=<"C	<"Z	2"2"X"2"]"�$"5	<"	<"�b")$"�$"g6$"�$"�Ah"*9n"�G$"�#b"�<"�6"|>w"�<}"Y9n"m$"|:n"�:n"�>b"b"�>�"�<�"
:�"J;�"�D�"�D�"�>b"*9�"
:�"b"~2�"��"�-("�("�	("("	
"
#
89]_`abcdefghijk!l#m#y%z'{)|+}-~/1�3�3�5�5�7�7�9�9�;�;�=�=�?�?�A�C�CE	EGIIKKMM3OKQLQ�S�S�U�U�W�W�Y�Y�[�[�]�]�_�_�a�a�c�c�e�e�g�g�i�ik
kmmooqqsuuwy{} 6Jq����-l�����"�	9BQZ������
M^����������� �	C	L	{	�	�	�	�	=
F
O
_
�
�
�
�
���1���
�
�
$5��&Omox���������
%:CL�������*3PY���	0m����Y��(@�f��		ZIH�HdH� 		QcHnHH7"�7��!pU��h8H1���@�8�� DE9F;G;H;I<J<K<L<M<N<OC�0�0�0�0�0�?G3GK���%)�;�=
�*
�.

�
�
Gv
��!<
`�!�

�G���GG1!��;*

8!*
�G4G:
*
*
<.ctor>b__22_10BackoffAlgorithmErr1040<>9__0_0<.ctor>b__0_0<Generate>b__41_0<>c__DisplayClass41_0<.ctor>b__22_0<>c__DisplayClass32_0<>c__DisplayClass13_0<>9__23_0<Generate>b__23_0<>9__43_0<Generate>b__43_0<>c__DisplayClass34_0<>9__4_0<ReorderOperations>b__4_0<>c__DisplayClass5_0<>9__36_0<Generate>b__36_0<>c__DisplayClass39_0<Generate>b__0<Visit>b__0<>h__TransparentIdentifier0<.ctor>b__22_11<>9__0_1<.ctor>b__0_1<Generate>b__41_1<.ctor>b__22_1<>9__23_1<Generate>b__23_1<>9__4_1<ReorderOperations>b__4_1<>9__5_1<Generate>b__5_1<>9__36_1<Generate>b__36_1<Generate>b__1<>f__AnonymousType0`1Func`1TaskCompletionSource`1Nullable`1IEnumerable`1Predicate`1Stack`1Task`1Expression`1EntityTypeConfiguration`1Action`1ICollection`1ReadOnlyMetadataCollection`1ReadOnlyCollection`1EqualityComparer`1SingletonDependencyResolver`1IEnumerator`1DbExpressionVisitor`1IList`1<.ctor>b__22_12ToInt32GetInt32<>9__41_2<Generate>b__41_2<.ctor>b__22_2<>9__23_2<Generate>b__23_2<>9__4_2<ReorderOperations>b__4_2<>9__5_2<Generate>b__5_2<Generate>b__2<>f__AnonymousType1`2<>f__AnonymousType2`2Func`2KeyValuePair`2IDictionary`2BackoffAlgorithmErr2013BackoffAlgorithmErr1213<.ctor>b__22_13<.ctor>b__22_3<>9__4_3<ReorderOperations>b__4_3<>9__5_3<Generate>b__5_3<Generate>b__3Func`3BackoffAlgorithmErr1614<.ctor>b__22_14GetInt64<.ctor>b__22_4<>9__4_4<ReorderOperations>b__4_4<Generate>b__4BackoffAlgorithmErr1205<.ctor>b__22_15<.ctor>b__22_5<>9__5_5<Generate>b__5_5BackoffAlgorithmErr2006<.ctor>b__22_16GetInt16__StaticArrayInitTypeSize=6MySql.Data.Entity.EF6<.ctor>b__22_6<>9__5_6<Generate>b__5_6<.ctor>b__22_17<.ctor>b__22_7<>9__5_7<Generate>b__5_7<.ctor>b__22_8<>9<.ctor>b__22_9<Module><PrivateImplementationDetails>GCCF7D34BC0F8A208732BCF6AF9217B652EE7B613DDEFAULT_DECIMAL_SCALEget_UseDefaultCommandTimeoutForEFGenerateSQLLONGBLOB_MAXLENMEDIUMBLOB_MAXLENVARCHAR_MAXLENLONGTEXT_MAXLENMEDIUMTEXT_MAXLENVARBINARY_MAXLENDEFAULT_DECIMAL_PRECISIONSystem.IODEFAULT_MAX_RETRIESTDEFAULT_MAX_DELAYvalue__LambdafaGetSchemadefaultSchemaget_NewSchemaMySql.DataSystem.DataMetadataBackoffAlgorithmNdbmscorlib<>cSystem.Collections.GenericPrepareAsyncget_MigrationIdmigrationIdReadAddget_IsUnboundedSetCanceledget_Scopedset_Scopedget_IsWrappedset_IsWrappedget_IsClosedIsNegatedget_RecordsAffected_columnsVisitedQuotedget_TypeNotSupportedget_IsCancellationRequestedGetGuidNewGuid<MigrationId>i__Field<fk>i__Field<tbl>i__Field<idx>i__Field<Scoped>k__BackingField<IsWrapped>k__BackingField<Name>k__BackingField<TableName>k__BackingField<_tableName>k__BackingField<ColumnName>k__BackingField<CommandType>k__BackingField<Where>k__BackingField<Ascending>k__BackingField<Literal>k__BackingField<Column>k__BackingField<serverVersion>k__BackingField<ColumnAlias>k__BackingField<Properties>k__BackingField<_generatedTables>k__BackingField<Values>k__BackingField<autoIncrementCols>k__BackingField<primaryKeyCols>k__BackingField<Columns>k__BackingField<Parameters>k__BackingField<Sets>k__BackingField<Target>k__BackingField<PropertyFragment>k__BackingField<GroupBy>k__BackingField<OrderBy>k__BackingFieldGenerateProcedureCmdcmdReadToEndDbCommandEFMySqlCommandcommandAppendappendFindget_CommandTreeKindDbCommandTreeKindget_PrimitiveTypeKindget_BuiltInTypeKindget_ExpressionKindDbExpressionKindexpressionKindHandleFunctionRoundmethodReplaceIsNullOrWhiteSpacenamespaceMySqlTraceGetServiceget_InstanceGenerateParamSentenceget_UpdatedRowSourceset_UpdatedRowSourceUpdateRowSourceGetMappingResourceGetXmlResourceGetHashCodeget_ModeParameterModemodeDbCommandTreeDbUpdateCommandTreeDbDeleteCommandTreeDbModificationCommandTreeDbFunctionCommandTreeDbInsertCommandTreeDbQueryCommandTreecommandTreetreeget_TypeUsageCreateStringTypeUsageCreateDecimalTypeUsageCreateDefaultTypeUsageCreateBinaryTypeUsagetypeUsageget_MessageAddRangeRemoveRangeget_IsDestructiveChangeTryPromoteToLikeEndInvokeBeginInvokeget_Scaleget_Tableset_TableGetSchemaTableDataTableoldTablescopeTableget_PrincipalTableset_PrincipalTableGetDefaultColumnsForTableget_DependentTableset_DependentTablenewTableICloneableget_IsNullableIEnumerableIDisposabletableget_DesignTimeVisibleset_DesignTimeVisibledesignTimeVisibleIsCompatibleWrapIfNotCompatibleGetDoubleRuntimeFieldHandleRuntimeMethodHandleRuntimeTypeHandleGetMethodFromHandleGetTypeFromHandleSingleget_Nameset_Nameget_NamespaceNameresourceNameget_TableNameset_TableName_oldTableNameVisitAndReplaceTableName_newTableNameget_VariableNameget_GroupVariableNameget__tableNameset__tableNameGetDataTypeNameresourceBaseNamebaseNameget_FullNameget_ColumnNameset_ColumnNameget_ActualColumnNamecolumnNameget_ProviderName_providerNameget_ParameterNameset_ParameterNameCreateUniqueParameterNameclassNameGetNameget_HasDefaultNameIProviderInvariantNameMySqlProviderInvariantNameinputNameget_NewNamenameget_DateTimeGetDateTimeAppendLineWriteLineget_NewLineGenerateInlineget_NoneClonepkOpeEscapeScopescopeget_TypeIsValidMySqlDataTypedataTypeget_DbTypeset_DbTypeGetDbTypeIsNumericTypeGetFieldTypeget_CommandTypeset_CommandTypeEServiceTypeChangeTypeget_VariableTypeget_StoreTypeset_StoreTypeGetStoreTypestoreTypeget_BaseTypeValueTypeget_StoreTypeNameToStorePrimitiveTypeget_StoreTypeNameToEdmPrimitiveTypeOfTypeget_DeclaringTypeIsStringTypeStructuralTypeBuildParamTypeget_EdmTypeget_NoStoreTypeForEdmTypeGetEdmTypeedmTypeJoinTypejoinTypeGetColumnTypeAssociationTypeinformationTypeCollectionTypeOpType_providerTypeget_ClrTypeGetTypetargetTypeget_ResultTypeget_WrongFunctionResultTypeget_ClrEquivalentTypeget_ElementTypecontextTypeRowTypeComplexType_ctxTypeEntityTypetypePrepareCompareget_Whereset_WhereSystem.CoreSystem.Data.Entity.CoreSystem.Data.Entity.Infrastructureget_Cultureset_CultureresourceCultureget_InvariantCultureMethodBaseEntityTypeBaseInternalDataCollectionBaseEntitySetBaseget_Databaseset_DatabaseDbCreateDatabaseDbDeleteDatabaseget_ElseCloseDisposeTryParseget_InverseDbModificationClauseDbSetClauseDbSortClauseget_PredicateCreateNegateMulticastDelegateDbAggregateDbFunctionAggregateGenerateDebuggerBrowsableStateEditorBrowsableStateget_CascadeDeleteWriteCompilerGeneratedAttributeGuidAttributeGeneratedCodeAttributeDebuggerNonUserCodeAttributeNeutralResourcesLanguageAttributeDebuggableAttributeDebuggerBrowsableAttributeEditorBrowsableAttributeComVisibleAttributeAssemblyKeyFileAttributeAssemblyTitleAttributeAssemblyTrademarkAttributeTargetFrameworkAttributeDebuggerHiddenAttributeAssemblyDelaySignAttributeAssemblyInformationalVersionAttributeAssemblyConfigurationAttributeAssemblyDescriptionAttributeInternalsVisibleToAttributeDefaultMemberAttributeCompilationRelaxationsAttributeAssemblyProductAttributeAssemblyCopyrightAttributeAssemblyCompanyAttributeRuntimeCompatibilityAttributeExecuteToByteGetByteget_Valueset_ValuesourceValueNormalizeValueget_HasValueTryGetValuevalueMakeColumnNameUniqueget_IsUniqueRemoveSuppressFinalizeLastIndexOfbfcflfinfsfSystem.Threadingget_Ascendingset_AscendingascendingDbExpressionBindingDbGroupExpressionBindingget_EncodingSystem.Runtime.Versioningget_ReturningreturningGetStoreSchemaMappingget_ConnectionStringset_ConnectionStringconnectionStringLikeEscapeCharToStringGetResourceAsStringGetStringGetFacetStringSubstringdisposingOnModelCreatingargForEachcolumnHashPushset_AutoFlushMathlogPathget_Lengthset_Lengthget_MaxLengthlengthEndsWithStartsWithget_DepthmiobjAsyncCallbackcallbackPeekget_fkEntityFrameworkget_TaskGetDecimalCompareOrdinalGetOrdinalordinalget_Literalset_LiteralGetNumericLiteralliteralop_GreaterThanOrEqualget_tblMySql.Data.Entity.Properties.SchemaDefinition-5.0.ssdlMySql.Data.Entity.Properties.SchemaDefinition-5.1.ssdlMySql.Data.Entity.Properties.SchemaDefinition-5.5.ssdlMySql.Data.Entity.Properties.SchemaDefinition-5.6.ssdlMySql.Data.Entity.Properties.SchemaDefinition-5.7.ssdlCancelSystem.Data.Entity.Migrations.ModelsourceModelColumnModelParameterModelSystem.Collections.ObjectModeltargetModelSystem.ComponentModelPropertyModelpropertyLevelMySql.Data.Entity.EF6.dllIsDBNullSystem.XmlMySql.Data.Entity.Properties.ProviderManifest.xmlcolSystem.Data.Entity.Migrations.Sqlget_Sqlset_SqlPrepareSqlWriteSqlget_DefaultValueSqlGenerateReturningSqlWriteInnerSqlget_BodySqlsqlMySql.Data.Entity.Properties.SchemaMapping.mslGetManifestResourceStreamparamSystem.Data.Entity.Core.Metadata.Edmget_ItemMetadataItemSystemBackoffAlgorithmTrimFromEnumTryToPromoteToInGetBinaryFragmentPartsForInShouldRetryOnerrorsToRetryOnresourceManGetBooleanTimeSpanget_Thenget_WhenCancellationTokencancellationTokenResolveManifestTokenGetDbProviderManifestTokenGetProviderManifestToken_providerManifestTokenmanifestTokenOpenSystem.Data.Entity.Migrations.DesignMinJoinget_Columnset_ColumnAddColumnHasDifferentNameForColumncolumnUnionget_PrecisionDBVersionget_ServerVersionget_serverVersionset_serverVersionversionget_ExpressionDbLambdaExpressionDbExpressionDbArithmeticExpressionDbAndExpressionDbNewInstanceExpressionVisitNewInstanceExpressionDbVariableReferenceExpressionDbParameterReferenceExpressionDbLikeExpressionDbOfTypeExpressionDbCaseExpressionDbIsOfExpressionDbRefExpressionDbEntityRefExpressionDbDerefExpressionDbUnionAllExpressionDbNullExpressionDbIsNullExpressionDbInExpressionSupportsInExpressionDbScanExpressionDbJoinExpressionHandleJoinExpressionDbCrossJoinExpressionDbRelationshipNavigationExpressionDbFunctionExpressionDbComparisonExpressionShouldWrapExpressionDbSkipExpressionDbOrExpressionMemberExpressionDbQuantifierExpressionParameterExpressionDbFilterExpressionDbTreatExpressionDbProjectExpressionDbIntersectExpressionDbDistinctExpressionDbLimitExpressionDbConstantExpressionDbElementExpressionDbNotExpressionDbExceptExpressionDbSortExpressionDbCastExpressionVisitInputExpressionNewExpressionDbGroupByExpressionDbRefKeyExpressionDbApplyExpressionDbUnaryExpressionDbBinaryExpressionVisitBinaryExpressionDbIsEmptyExpressionDbPropertyExpressionexpressionGetDbInformationLogInformationRenameTableOperationrenameTableOperationCreateTableOperationcreateTableOperationMoveTableOperationmoveTableOperationDropTableOperationdropTableOperationCreateProcedureOperationUpdateDatabaseOperationupdateDatabaseOperationSqlOperationAddColumnOperationaddColumnOperationRenameColumnOperationrenameColumnOperationDropColumnOperationdropColumnOperationAlterColumnOperationalterColumnOperationMigrationOperationCreateIndexOperationcreateIndexOperationDropIndexOperationdropIndexOperationAddForeignKeyOperationaddForeignKeyOperationDropForeignKeyOperationdropForeignKeyOperationAddPrimaryKeyOperationaddPrimaryKeyOperationDropPrimaryKeyOperationdropPrimaryKeyOperationHistoryOperationoperationScaffoldedMigrationMySqlEFConfigurationDbConfigurationSystem.Data.Entity.ModelConfigurationSystem.GlobalizationOperationAction_actionget_Transactionset_Transactionget_DbTransactionset_DbTransactionMySqlTransactionget_SuppressTransactionset_SuppressTransactionget_ProjectionSystem.ReflectionValueCollectionStoreItemCollectionstoreItemCollectionget_DbParameterCollectionMySqlParameterCollectionDataRowCollectionset_Connectionget_DbConnectionset_DbConnectionCreateConnectionexistingConnectionget_ConnectionMustBeOfTypeMySqlConnectionconnectionset_DirectionModeToDirectionParameterDirectionget_FunctionGenericFunctionUserDefinedFunctionHandleFunctionBitwiseFunctionget_EdmFunctionget_JoinConditionjoinConditionCreateDbCommandDefinitionCreateCommandDefinitionNotImplementedExceptionNotSupportedExceptionProviderIncompatibleExceptionArgumentNullExceptionMySqlExceptionInvalidOperationExceptionSetExceptionArgumentExceptionlastExceptionexceptionGetStoreSchemaDescriptionSystem.Data.Entity.Infrastructure.DependencyResolutionMySql.Data.CommonSystem.Data.CommonSystem.Data.Entity.Core.CommonStringComparisonget_PatternStoreGeneratedPatternMethodInfoCultureInfoMemberInfoConstructorInfopoGetTopOpWrapSkipPopSystem.Linq<MigrationId>j__TPar<fk>j__TPar<tbl>j__TPar<idx>j__TParget_YearClearusedEscapeCharLikeEscapeCharGetCharExecuteScalarAssociationEndMemberRelationshipEndMemberEdmMemberIsKeyMemberget_NumberExecuteDbDataReaderEFMySqlDataReaderwrappedReaderExecuteReaderStringReaderXmlReaderStreamReaderTextReaderreaderIFormatProviderIDbModelCacheKeyProviderDbConnectionStringBuilderMySqlConnectionStringBuilderGetStringBuilderDbModelBuildermodelBuilderget_SortOrdersortOrderbufferget_ResourceManagerMySqlLoggerOpDispatcher_dispatcherotherQuoteIdentifierSystem.CodeDom.Compilercallerget_EntityContainerinnerToUpperescapeCharacterCreateDbParameterrowsAffectedParameterCreateParameterMySqlParameterFunctionParameterget_IsOutParameterStringWriterStreamWriterget_InnerWriterIndentedTextWriterwriterBitConverterouterIManifestTokenResolverMySqlManifestTokenResolverSetManifestTokenResolverIDbDependencyResolverAddDependencyResolverMySqlDependencyResolverIDbProviderFactoryResolverMySqlProviderFactoryResolverToLowerCommandBehaviorget_DeleteBehaviorbehaviorget_Majorget_MinorFunctionProcessorIEnumeratorGetEnumeratorMySqlMigrationCodeGeneratorCSharpMigrationCodeGeneratorUpdateGeneratorDeleteGeneratorcallingGeneratorMySqlMigrationSqlGeneratorSetMigrationSqlGeneratorFunctionGeneratorSelectGeneratorInsertGeneratorgeneratorIsComparisonOperatorGetOperator.ctor.cctorReplaceTableNameVisitorSqlFragmentVisitorvisitorget_ColumnAliasset_ColumnAliastabsSystem.DiagnosticsfuncskeyFieldsget_TotalSecondsFromSecondsDbSpatialServicesSystem.Runtime.InteropServicesDbProviderServicesMySqlProviderServicesGetProviderServicesSetProviderServicesSystem.Runtime.CompilerServicesGetServicesMySqlScriptServicesSystem.ResourcesMySql.Data.Entity.Properties.Resources.resourcesDebuggingModesSystem.Data.Entity.Core.Common.CommandTreesget_CommandTreescommandTreesget_HistoryQueryTreesDbProviderFactories_totalRetries_maxRetriesSystem.Data.Entity.Migrations.UtilitiesMySql.Data.Entity.Propertiesget_Propertiesset_Propertiesget_MetadataPropertiesget_FromPropertiesGetColumnFromPropertiesFindInputFromPropertiesget_ToPropertiesGetPropertiespropertiesget__generatedTablesset__generatedTables_pluralizedNamesSetFunctionExpectedTypesSetExpectedTypesSetQueryExpectedTypesColumnTypestypesget_SetClausesget_AggregatesGetBytesget_Valuesset_ValuesGetValuesvalues_tableIndexesget_Settings<>4__thispksSystem.Threading.TasksEqualsget_autoIncrementColsset_autoIncrementColsget_primaryKeyColsset_primaryKeyColscolsGetItemsContainsget_Columnsset_Columns_dicColumnshasRenamedColumnsget_PrincipalColumnsAddDefaultColumnsget_DependentColumns_guidIdentityColumnsSystem.Linq.Expressionsget_Operations_pkOperationsmigrationOperationsReorderOperationsoperationsget_MigrationsSystem.CollectionsbitwiseFunctionsdateFunctionsstringFunctionsmathFunctionsgeoFunctionsOpsget_CharsquoteCharsremoveNonMySqlCharsGetCharsget_Membersget_AssociationEndMembersget_KeyMembersRuntimeHelpersget_Parametersset_ParametersparametersReplaceParemetersget_Setsset_Setsget_BaseEntitySetsget_Facets_specialStmtsselectStatementsTryMergeTwoInFragmentsTryMergeTwoBinaryFragmentsget_Argumentsget_AnonymousArgumentsget_ReferentialConstraintsDbDatabaseExistsget_Inputsget_Rowsget_HasRowsget_Keys_foreignKeysConcatAppendFormatGetFloatObjectobjectVisitInputExpressionEnsureSelectCanFuseSelect_onReturningSelectTryFusingSelectFuseSelectWithInnerSelectget_CurrentSelectselectget_DistinctIsDistinctAssociationSetEntitySetentitySetFacetget_Targetset_TargetResetdataOffsetDateTimeOffsetbufferOffsetget_LeftinfLeftWrapLeftleftget_RightinfRightWrapRightrightget_LimitVisitget_DefaultGetValueOrDefaultIAsyncResultSetResultNextResultresultToUpperInvariantToLowerInvariantget_Indentset_IndentMySql.Data.MySqlClientUpdateStatementDeleteStatementMigrationStatementSelectStatementInsertStatementLikeFragmentTableFragmentNegatableFragmentCaseFragmentLiteralFragmentIsNullFragmentSqlFragmentTryMergeBinaryFragmentAndInFragmentJoinFragmentColumnFragmentUnionFragmentFunctionFragmentGetDefaultColumnsForFragmentExistsFragmentGetFragmentSortFragmentListFragmentInputFragmentBinaryFragmentget_PropertyFragmentset_PropertyFragmentfragmentEnvironmentget_ArgumentEscapeLikeArgumentSupportsEscapingLikeArgumentargumentget_CurrentReferentialConstraintget_Countget_FieldCountparameterCountcountAcceptDbCreateDatabaseScriptGetTableCreateScriptGetAssociationCreateScriptMySqlScriptisRightPartInsertConvertGetDbProviderManifestDbXmlEnabledProviderManifestMySqlProviderManifestGetProviderManifest_providerManifestGetManifestget_ListWriteListInListToListlistget_CommandTimeoutset_CommandTimeoutget_DefaultCommandTimeoutcommandTimeoutget_InputPushInputinputMoveNextSystem.Textget_CommandTextset_CommandTextDbContextMySqlHistoryContextSetHistoryContextcontextNewget_NowPowHistoryRowget_idxindexTrimSchemaPrefixget_GroupByset_GroupByAddGroupByTryFlatteningGroupByget_OrderByset_OrderByAddOrderByWriteOrderByGetNextDelay_maxDelayInitializeArrayget_IsArrayGenerateProcedureBodyget_Keyget_CacheKeyIDbModelCacheKeyMySqlModelCacheKey_customKeyget_IsForeignKeyHasKeyContainsKeyget_PrimaryKeyset_PrimaryKeykeyIDbExecutionStrategyMySqlExecutionStrategyget_AssemblyGetExecutingAssemblyget_ApplyIndexOfAnySelectManyWrapJoinInputIfNecessaryget_QueryDefiningQueryExecuteNonQueryIDbConnectionFactoryMySqlConnectionFactorySetDefaultConnectionFactoryDbProviderFactoryResolveProviderFactorySetProviderFactoryGetFactoryMySqlClientFactoryMySqlModelCacheKeyFactorySystem.Data.Entity.Migrations.Historyop_Equalityop_InequalityMySql.Data.EntitySystem.Data.Entityget_IsIdentityIsNullOrEmptyget_PropertyTryGetValueMetadataPropertyPushPropertyEdmPropertyget_LastPropertyproperty/{{ MigrationId = {0} }}3{{ tbl = {0}, fk = {1} }}5{{ tbl = {0}, idx = {1} }}cMySql.Data.Entity.Properties.ProviderManifest.xml+StoreSchemaDefinition%StoreSchemaMappingsThe provider returned null for the informationType '{0}'.#SchemaMapping.mslaYour version of MySQL is not currently supported3SchemaDefinition-5.0.ssdl3SchemaDefinition-5.1.ssdl3SchemaDefinition-5.5.ssdl3SchemaDefinition-5.6.ssdl3SchemaDefinition-5.7.ssdlstoreTypeqThe underlying provider does not support the type '{0}'.MaxLengthedmType	boolutinyinttinyintsmallintint
bigint	guid
doublefloatPrecisionScaledecimalFixedLengthtinyblob	blobmediumbloblongblobUnicode	charncharMaxvarcharnvarcharmediumtextlongtexttimestampdatetime	timeAMySql.Data.Entity.Properties.{0}%_\".5.5commandTreeuVersions of MySQL prior to 5.0 are not currently supported5.05.15.65.7connectionKCREATE DATABASE `{0}`; USE `{0}`; {1}Databases;DROP DATABASE IF EXISTS `{0}`-- MySql script-- Created on FK_-IALTER TABLE `{0}` ADD CONSTRAINT {1}	 FOREIGN KEY (EALTER TABLE `{0}` ADD KEY (`{1}`);
{0}{1}, )'	REFERENCES `{0}` (; ON DELETE {0} ON UPDATE {1};NO ACTIONTableCREATE TABLE 
`{0}`('{0}{1}	`{2}` {3}{4});GALTER TABLE `{0}` ADD PRIMARY KEY ({0}`{1}`DELIMITER ||WCREATE TRIGGER `{0}` BEFORE INSERT ON `{1}`_IdentityTgr'	FOR EACH ROW BEGINc		DROP TEMPORARY TABLE IF EXISTS tmpIdentity_{0};��		CREATE TEMPORARY TABLE tmpIdentity_{0} (guid CHAR(36))ENGINE=MEMORY;1		SET @var_{0} = UUID();_		INSERT INTO tmpIdentity_{0} VALUES(@var_{1});3		SET new.{0} = @var_{0};/		SET new.{0} = UUID();	END ||DELIMITER ;u UNSIGNEDCHAR(36) BINARY
String	text
 ({0})Decimal( {0}, {1} ) DateTime( {0} ) Nullable NOT NULL+StoreGeneratedPatternInt- AUTO_INCREMENT UNIQUE	Guid; DEFAULT CURRENT_TIMESTAMP{0}(  );Invalid identity column type.-MySql.Data.MySqlClientRe��Trying to retry for non transient exception number: {0}, message: {1}ARetrying query for exception {0}h({0}){0}( AS {0} {0} 	 ON `{0}`

=NOT (	 !=  NOT 
 IN ( ,	CASE WHEN () THEN ()  ELSE (END	{0}.	NOT EXISTS({0}({1}DISTINCT  IS {0} NULLNOT
 LIKE 	 {0}	DESCASC UNION ALL ! UNION DISTINCT 
target)CommandTextAttribute
Schema5StoreFunctionNameAttributeBitwiseAnd&BitwiseNot!BitwiseOr|BitwiseXor^CurrentDateTimeNOW()	YearYEAR({0})MonthMONTH({0})DayDAY({0})	HourHOUR({0})
MinuteMINUTE({0})
SecondSECOND({0})
Concat!CONCAT({0}, {1})IndexOf!LOCATE({0}, {1})	LeftLEFT({0}, {1})
LengthLENGTH({0})LTrimLTRIM({0})Replace-REPLACE({0}, {1}, {2})ReverseREVERSE({0})RightRIGHT({0}, {1})RTrimRTRIM({0})Substring+SUBSTR({0}, {1}, {2})ToLowerLOWER({0})ToUpperUPPER({0})	TrimTRIM({0})AbsABS({0})CeilingCEILING({0})FloorFLOOR({0})RoundROUND!SpatialDimensionDimension({0})SpatialEnvelopeEnvelope({0})!IsSimpleGeometryIsSimple({0})SpatialTypeName#GeometryType({0})%CoordinateSystemIdSRID({0})PointPOINT({0}, {1})XCoordinate
X({0})YCoordinate
Y({0})!GeometryFromText#GeomFromText({0})SpatialContains+MBRContains({0}, {1})
AsTextAsText({0})SpatialBuffer!Buffer({0}, {1})#SpatialDifference)Difference({0}, {1})'SpatialIntersection+Intersection({0},{1})Distance��GLength(LineString(GEOMFROMWKB(ASBINARY({0})), GEOMFROMWKB(ASBINARY({1}))))!BuiltInAttribute1NiladicFunctionAttributeQNiladic functions cannot have parameters {0} ({1})0! row_count() > 0!last_insert_id()KANY(SELECT guid FROM tmpIdentity_{0}) AND `{0}`=MySql.ubigintC0C1	K{0}EdmBigCountCOUNTMUnion fragment is not properly formed.1 = 1	NULLX
@gp{0}DefiningQuery��http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator:TypeViews��http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator:Schema@1ANDOR-(/*+Edm.IndexOf
'{0}%''''Edm.Reverse
'%{0}'>%{0}%Edm.RightEdm.Length+ row_count() > 0 and 	dbo.[].ForeignKey("", -, cascadeDelete: true).Index(, unique: true, name: {0};%AddColumnOperation-AddForeignKeyOperation-AddPrimaryKeyOperation)AlterColumnOperation)CreateIndexOperation)CreateTableOperation'DropColumnOperation/DropForeignKeyOperation%DropIndexOperation/DropPrimaryKeyOperation%DropTableOperation%MoveTableOperation+RenameColumnOperation)RenameTableOperationSqlOperation!HistoryOperation1CreateProcedureOperation/UpdateDatabaseOperation?DROP PROCEDURE IF EXISTS `{0}`;%_idempotent_scriptDELIMITER //1CREATE PROCEDURE `{0}`()BEGINA  DECLARE CurrentMigration TEXT;i  IF EXISTS(SELECT 1 FROM information_schema.tables U  WHERE table_name = '__MigrationHistory' M  AND table_schema = DATABASE()) THEN 9    SET CurrentMigration = (  END IF;E  IF CurrentMigration IS NULL THEN?    SET CurrentMigration = '0';3  IF CurrentMigration < '' THEN 
END //CALL `{0}`();dbo0x7CREATE PROCEDURE `{0}`({1})
BEGIN 	 END{0} {1} {2},INOUT
({0}) Ualter table `{0}` add column `{1}` {2} {3} unique Galter table `{0}` drop column `{1}`alter table `` modify `` �sset @columnType := (select case lower(IS_NULLABLE) when 'no' then CONCAT(column_type, ' not null ')  when 'yes' then column_type end from information_schema.columns where table_name = '+' and column_name = '');[set @sqlstmt := (select concat('alter table `` change `` `)` ' , @columnType));7prepare stmt from @sqlstmt;execute stmt;1deallocate prepare stmt;%` add constraint ``  foreign key references `	` ( K on update cascade on delete cascade {0} not null  default ''  unsignedmediumint! auto_increment  default {0}Qalter table `{0}` drop foreign key `{1}`CREATE UNIQUE 	SortAscending/index  `{0}` on `{1}` (	TypeBTree	HASHBTREE
using Ealter table `{0}` drop index `{1}`create table `` (SDROP TRIGGER IF EXISTS `{0}_IdentityTgr`;oCREATE TRIGGER `{0}_IdentityTgr` BEFORE INSERT ON `{0}`%FOR EACH ROW BEGIN+SET NEW.{0} = UUID();_DROP TEMPORARY TABLE IF EXISTS tmpIdentity_{0};��CREATE TEMPORARY TABLE tmpIdentity_{0} (guid CHAR(36))ENGINE=MEMORY;YINSERT INTO tmpIdentity_{0} VALUES(New.{1});primary key ( A) engine=InnoDb auto_increment=0drop table ``%` add primary key  `'DeleteAutoIncrement;  alter table `'` drop primary key 7rename table `{0}` to `{1}`DELETE FROM  WHERE 9SET SESSION sql_mode='ANSI';INSERT INTO  VALUES ;

R;Unknown PrimitiveTypeKind {0}<<=>=!=LEFT OUTER JOININNER JOINCROSS JOINOUTER JOIN;expression kind not supported
SELECT DISTINCT 

FROM 

 WHERE 

 GROUP BY  LIMIT 	{0},)18446744073709551615

 ORDER BY UPDATE  SET MMySql.Data.Entity.Properties.ResourcesKConnectionMustBeOfTypeMySqlConnection+NoStoreTypeForEdmType!TypeNotSupported/WrongFunctionResultType KEY (`{0}`),昃H��B��j,"���      Y�A��  �q�}	�}   	��
�}

 i
�m
��qu ��
 ��q��q   }mq yuyu   	mqmqm��qyu}uuumq mq�� ��i��i�� ����    ��
���� ��	����1
��l������m��m���������� �� �� �!��m
�!��m	 ��
����m  ����m �U  �M	 y��y�� �Y m �� ����	 ������ ��������q ��	 y������ ��y��q ��
����
 �� ������ �� �� ��
������ �� �������� ����&�������������������� ����
0��
����������	 y��
�!��
���!������
���!������ �*
�������	�
��������	 y������	 y���� ���
��y�	 ���y�� ��	 y������ �	 ��'
������������� ���	 y�Qy�Q  �� ������� �� ��uuyuuu   8	
8��9�5 �	��9�5	�!
�!
�-����0	���= ��� � �- �� ���I�M �I�M �1�Q���U �Q���U��D
�aD �]�]D �a�aD�mD���e ���e�mD
���e


 
�e

���e�e �e�e ���u �q
0�%
�!	�u��-�1��-�1�=�)�9�A�5�!�)��E�)�u
��!�%�!0�%�E�
 �}��  ���� �� 	 �I �I �M �� �� ���������i��	���� �i	 �Q   	 

	 

 �� �� 
 �� �  �
   
 ��  ��
��� 
�������������� ��	����	�e�i	��������
���������� ������
�������� ���������� ��0�A
��������������


 �-���1���!���������-��	��������������������
 �-���!������������ �� ��������������} �� ����x|��	��x�������������x��t�(
�	���
������������ �	
 �-��-��1���
 �-���-��9��x��x������������������������|�x����1�1
 �-�1�!�1���1����������x������
��t�Q�Q  ��}�� ������ �a�����
����4�����������������������������������������x����'
�����U�I�����a�a�a���a�a��	������������������
 �!�������������������������������������y�� �y	����!�!�
���!�����
������!���Q��������*�!�!��!�Q
�������������
����������������!�!�
�������������!
����������!���Q��������
�������������
���������������
����������
������ ���!���� �� ��	 ����	 ���� �- �!��	 ������ �� ����	 ��	 ���� 	 ����� ���������� 
 �-���!�������1�� �� ��	 ���� �y ����������}��������������
 �}��������}���������������� 	 ����	 ����	 ����	 ����	 ����		 �	���
 	 �
���	 ������	���$����&������������$���� ��
�������
����
�������
����
�������
�����!���������+
��������������!�!���
 �-�!�!
�!
 �-���!�������!�!���!
 �-���1�� �!��!���!��������������)
 �-���!������ �)
�������!������ �M����������)
 �-�9�����9�9�!�9���9	 �������� mm
�! �� ����	�,�	����0����	���
�

�!m�������� �����4��	 ������)�8�����������������=��	���
�������1������� }m�-
�� �� ��}q}�Q�� ��	 �Q������x#����������������������������!���������������������� �� �� �m
����������
����������
��
����z\V4��hȉi�M��$��$RSA1�s��qu,x)A&�JA��C�q�_��<�_e����Z�@gюz��F}zQ��$�q�(�����X
�	��i$��[���J�NP�c��� O�\���N�ec�2n���8b1A��
l�k>�\���������?���
,MySql.Data.MySqlClient	�������8	��D�e�}����ql����m	����x
����	����	����������	��x��	�����������	����	����	�����!�������!������	�����
���$	�!���	�����i�m�<�	�I�M
�Q���U�
����Q�������������������������Q������������������������	�!���������(����������������������i i ii   �� �� �� ������ ��l ��l ��l ������ ������ � �� m � m � �!� �-�� �� 0 �5�9
 ���e�i �i �e
 ���e	 �} ���� �� �� �� �� ���� �� ���� l��  �  �� �� �� ����	 ���� �� �� �� �� �� �� �� �� �� �� �� �� � t | ���� �� �� �� �� �� ��	 �� �� �� �� ������ ���� ������ �� ����� x x x x�� � ���� ���� ��� ��� ����� ��� ��� ���! ���������� ���� xx ���% ���� ���m ���) ���- ���5 ���9 ���= ��
 ���� ���� ���E ���I ���M ���U ���Y ���] ���a ���e ���i ���m ���q ���u ���y ���} ���� ���� ���� ���� ����	 ��% ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� xx ��� � ������
 x��m ������ ������ ���� ������ ������ ������ ������ �� ��  �!���!�� �� ��%
 �-��
 �1�� ��5 �5 �-�9 �9 ��� ��� ��� ��
 ��� �� ��� ��� ��� ��� �� ��� �� �� ��	 ��= ��� x
 ���� ����}m�Mmm�U�Y��
�-���	�] ��
 ���� ����
 ���� ����	 ���� ����x ����t ���i�m �M	 �U�� �� �� ��������
 ���� ���������� ��������
 ���� ����������
 �!����
 �!���� ������ ������ ������ ������ �E���I ��E ���� ���� ���� ��(((��((��((��((��(��(��(��(((��(��(��(�
(����(x
(����
(����
(�����i�mTWrapNonExceptionThrowsMySql.Data.Entity for EF6#Entity Framework 6.0 supportedOracleMySql.Data.EntityPKCopyright © 2008, 2015, Oracle and/or its affiliates. All rights reserved.)$540e7b3c-bd0b-4980-96d1-5d140d303f7e$..\..\ConnectorNetPublicKey.snk�k�eMySql.Data.Entity.Tests, PublicKey = 0024000004800000940000000602000000240000525341310004000001000100d973bda91f71752c78294126974a41a08643168271f65fc0fb3cd45f658da01fbca75ac74067d18e7afbf1467d7a519ce0248b13719717281bb4ddd4ecd71a580dfe0912dfc3690b1d24c7e1975bf7eed90e4ab14e10501eedf763bff8ac204f955c9c15c2cf4ebf6563d8320b6ea8d1ea3807623141f4b81ae30a6c886b3ee1�v�pMySql.Data.Entity.Migrations.Tests, PublicKey = 0024000004800000940000000602000000240000525341310004000001000100d973bda91f71752c78294126974a41a08643168271f65fc0fb3cd45f658da01fbca75ac74067d18e7afbf1467d7a519ce0248b13719717281bb4ddd4ecd71a580dfe0912dfc3690b1d24c7e1975bf7eed90e4ab14e10501eedf763bff8ac204f955c9c15c2cf4ebf6563d8320b6ea8d1ea3807623141f4b81ae30a6c886b3ee1�u�oMySql.Data.Entity.CodeFirst.Tests, PublicKey = 0024000004800000940000000602000000240000525341310004000001000100d973bda91f71752c78294126974a41a08643168271f65fc0fb3cd45f658da01fbca75ac74067d18e7afbf1467d7a519ce0248b13719717281bb4ddd4ecd71a580dfe0912dfc3690b1d24c7e1975bf7eed90e4ab14e10501eedf763bff8ac204f955c9c15c2cf4ebf6563d8320b6ea8d1ea3807623141f4b81ae30a6c886b3ee1
6.9.9
en-USG.NETFramework,Version=v4.0TFrameworkDisplayName.NET Framework 4	Item@3System.Resources.Tools.StronglyTypedResourceBuilder4.0.0.0�����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADP�c��X�T4f�Q;�O~�JConnectionMustBeOfTypeMySqlConnection*NoStoreTypeForEdmTypeV TypeNotSupported�.WrongFunctionResultType�TThe connection parameter must reference an object of type MySql.Data.MySqlConnectionSThere is no store type corresponding to the EDM type '{0}' of primitive type '{1}'.8The underlying provider does not support the type '{0}'.TResult type of a function is expected to be a collection of RowType or PrimitiveTypewR<?xml version="1.0" encoding="utf-8"?>
<Mapping xmlns:cs="urn:schemas-microsoft-com:windows:storage:mapping:CS" 
         Space="C-S" xmlns="urn:schemas-microsoft-com:windows:storage:mapping:CS">
  <cs:EntityContainerMapping StorageEntityContainer="Schema" CdmEntityContainer="SchemaInformation">
    <cs:EntitySetMapping Name="Tables" StoreEntitySet="STables" TypeName="Store.Table">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName" ColumnName="Catalog" />
      <cs:ScalarProperty Name="SchemaName" ColumnName="Schema" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
    </cs:EntitySetMapping>
	  
    <cs:EntitySetMapping Name="TableColumns" StoreEntitySet="STableColumns" TypeName="Store.Column">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
      <cs:ScalarProperty Name="IsNullable" ColumnName="IsNullable" />
      <cs:ComplexProperty Name="ColumnType">
        <cs:ScalarProperty Name="TypeName" ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength" ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision" ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision" ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale" ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet" ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsIdentity" ColumnName="IsIdentity" />
      <cs:ScalarProperty Name="IsStoreGenerated" ColumnName="IsStoreGenerated" />
      <cs:ScalarProperty Name="Default" ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Views" StoreEntitySet="SViews" TypeName="Store.View">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName" ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName" ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ScalarProperty Name="ViewDefinition" ColumnName="ViewDefinition" />
      <cs:ScalarProperty Name="IsUpdatable" ColumnName="IsUpdatable" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewColumns" StoreEntitySet="SViewColumns" TypeName="Store.Column">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
      <cs:ScalarProperty Name="IsNullable" ColumnName="IsNullable" />
      <cs:ComplexProperty Name="ColumnType">
        <cs:ScalarProperty Name="TypeName" ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength" ColumnName="MaxLength" />
        <cs:ScalarProperty Name="Precision" ColumnName="Precision" />
        <cs:ScalarProperty Name="DateTimePrecision" ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Scale" ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet" ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsIdentity" ColumnName="IsIdentity" />
      <cs:ScalarProperty Name="IsStoreGenerated" ColumnName="IsStoreGenerated" />
      <cs:ScalarProperty Name="Default" ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Functions" TypeName="Store.ScalarFunction" StoreEntitySet="SFunctions">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName" ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName" ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ComplexProperty Name="ReturnType">
        <cs:ScalarProperty Name="TypeName" ColumnName="ReturnTypeName" />
        <cs:ScalarProperty Name="MaxLength" ColumnName="ReturnMaxLength" />
        <cs:ScalarProperty Name="Precision" ColumnName="ReturnPrecision" />
        <cs:ScalarProperty Name="DateTimePrecision" ColumnName="ReturnDateTimePrecision" />
        <cs:ScalarProperty Name="Scale" ColumnName="ReturnScale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName" ColumnName="ReturnCollationCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="ReturnCollationSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="ReturnCollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName" ColumnName="ReturnCharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="ReturnCharacterSetSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="ReturnCharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet" ColumnName="ReturnIsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="IsAggregate" ColumnName="IsAggregate" />
      <cs:ScalarProperty Name="IsBuiltIn" ColumnName="IsBuiltIn" />
      <cs:ScalarProperty Name="IsNiladic" ColumnName="IsNiladic" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="FunctionParameters" TypeName="Store.Parameter" StoreEntitySet="SFunctionParameters">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
      <cs:ComplexProperty Name="ParameterType">
        <cs:ScalarProperty Name="TypeName" ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength" ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision" ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision" ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale" ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet" ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="Mode" ColumnName="Mode" />
      <cs:ScalarProperty Name="Default" ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="Procedures" TypeName="Store.Procedure" StoreEntitySet="SProcedures">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="CatalogName" ColumnName="CatalogName" />
      <cs:ScalarProperty Name="SchemaName" ColumnName="SchemaName" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ProcedureParameters" TypeName="Store.Parameter" StoreEntitySet="SProcedureParameters">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Name" ColumnName="Name" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
      <cs:ComplexProperty Name="ParameterType">
        <cs:ScalarProperty Name="TypeName" ColumnName="TypeName" />
        <cs:ScalarProperty Name="MaxLength" ColumnName="MaxLength" />
        <cs:ScalarProperty Name="DateTimePrecision" ColumnName="DateTimePrecision" />
        <cs:ScalarProperty Name="Precision" ColumnName="Precision" />
        <cs:ScalarProperty Name="Scale" ColumnName="Scale" />
        <cs:ComplexProperty Name="Collation">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CollationCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CollationSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CollationName" />
        </cs:ComplexProperty>
        <cs:ComplexProperty Name="CharacterSet">
          <cs:ScalarProperty Name="CatalogName" ColumnName="CharacterSetCatalog" />
          <cs:ScalarProperty Name="SchemaName" ColumnName="CharacterSetSchema" />
          <cs:ScalarProperty Name="Name" ColumnName="CharacterSetName" />
        </cs:ComplexProperty>
        <cs:ScalarProperty Name="IsMultiSet" ColumnName="IsMultiSet" />
      </cs:ComplexProperty>
      <cs:ScalarProperty Name="Mode" ColumnName="Mode" />
      <cs:ScalarProperty Name="Default" ColumnName="Default" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="TableConstraints" >
      <cs:EntityTypeMapping TypeName="IsTypeOf(Store.Constraint)">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Name" ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable" ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred" ColumnName="IsInitiallyDeferred" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.UniqueConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType" Value="UNIQUE"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.CheckConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType" Value="CHECK"/>
        </cs:MappingFragment>
        <cs:MappingFragment StoreEntitySet="SCheckConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Expression" ColumnName="Expression" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.PrimaryKeyConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType" Value="PRIMARY KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.ForeignKeyConstraint">
        <cs:MappingFragment StoreEntitySet="SConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:Condition ColumnName="ConstraintType" Value="FOREIGN KEY"/>
        </cs:MappingFragment>
        <cs:MappingFragment StoreEntitySet="SForeignKeyConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="UpdateRule" ColumnName="UpdateRule" />
          <cs:ScalarProperty Name="DeleteRule" ColumnName="DeleteRule" />
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewConstraints" >
      <cs:EntityTypeMapping TypeName="Store.UniqueConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Name" ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable" ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred" ColumnName="IsInitiallyDeferred" />
          <cs:Condition ColumnName="ConstraintType" Value="UNIQUE"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.CheckConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Name" ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable" ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred" ColumnName="IsInitiallyDeferred" />
          <cs:ScalarProperty Name="Expression" ColumnName="Expression" />
          <cs:Condition ColumnName="ConstraintType" Value="CHECK"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.PrimaryKeyConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Name" ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable" ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred" ColumnName="IsInitiallyDeferred" />
          <cs:Condition ColumnName="ConstraintType" Value="PRIMARY KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
      <cs:EntityTypeMapping TypeName="Store.ForeignKeyConstraint" >
        <cs:MappingFragment StoreEntitySet="SViewConstraints">
          <cs:ScalarProperty Name="Id" ColumnName="Id" />
          <cs:ScalarProperty Name="Name" ColumnName="Name" />
          <cs:ScalarProperty Name="IsDeferrable" ColumnName="IsDeferrable" />
          <cs:ScalarProperty Name="IsInitiallyDeferred" ColumnName="IsInitiallyDeferred" />
          <cs:ScalarProperty Name="UpdateRule" ColumnName="UpdateRule" />
          <cs:ScalarProperty Name="DeleteRule" ColumnName="DeleteRule" />
          <cs:Condition ColumnName="ConstraintType" Value="FOREIGN KEY"/>
        </cs:MappingFragment>
      </cs:EntityTypeMapping>
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="TableForeignKeys" StoreEntitySet="SForeignKeys" TypeName="Store.ForeignKey">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
    </cs:EntitySetMapping>

    <cs:EntitySetMapping Name="ViewForeignKeys" StoreEntitySet="SViewForeignKeys" TypeName="Store.ForeignKey">
      <cs:ScalarProperty Name="Id" ColumnName="Id" />
      <cs:ScalarProperty Name="Ordinal" ColumnName="Ordinal" />
    </cs:EntitySetMapping>

    <cs:AssociationSetMapping Name="TableTableColumns" StoreEntitySet="STableColumns" TypeName="Store.TableOrViewColumn">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>
    
    <cs:AssociationSetMapping Name="ViewViewColumns" StoreEntitySet="SViewColumns" TypeName="Store.TableOrViewColumn">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableTableConstraints" StoreEntitySet="SConstraints" TypeName="Store.TableOrViewConstraint">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableConstraintColumns" StoreEntitySet="SConstraintColumns" TypeName="Store.TableOrViewConstraintColumn">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="ColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="TableConstraintForeignKeys" StoreEntitySet="SForeignKeys" TypeName="Store.ConstraintForeignKey">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ToTableForeignKeyColumns" StoreEntitySet="SForeignKeys" TypeName="Store.ToForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="ToColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FromTableForeignKeyColumns" StoreEntitySet="SForeignKeys" TypeName="Store.FromForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="FromColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewViewConstraints" StoreEntitySet="SViewConstraints" TypeName="Store.TableOrViewConstraint">
      <cs:EndProperty Name="Parent">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewConstraintColumns" StoreEntitySet="SViewConstraintColumns" TypeName="Store.TableOrViewConstraintColumn">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="ColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ViewConstraintForeignKeys" StoreEntitySet="SViewForeignKeys" TypeName="Store.ConstraintForeignKey">
      <cs:EndProperty Name="Constraint">
        <cs:ScalarProperty Name="Id" ColumnName="ConstraintId" />
      </cs:EndProperty>
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ToViewForeignKeyColumns" StoreEntitySet="SViewForeignKeys" TypeName="Store.ToForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="ToColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FromViewForeignKeyColumns" StoreEntitySet="SViewForeignKeys" TypeName="Store.FromForeignKeyColumn">
      <cs:EndProperty Name="ForeignKey">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
      <cs:EndProperty Name="Column">
        <cs:ScalarProperty Name="Id" ColumnName="FromColumnId" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="FunctionFunctionParameters" StoreEntitySet="SFunctionParameters" TypeName="Store.RoutineParameter">
      <cs:EndProperty Name="Routine">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Parameter">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

    <cs:AssociationSetMapping Name="ProcedureProcedureParameters" StoreEntitySet="SProcedureParameters" TypeName="Store.RoutineParameter">
      <cs:EndProperty Name="Routine">
        <cs:ScalarProperty Name="Id" ColumnName="ParentId" />
      </cs:EndProperty>
      <cs:EndProperty Name="Parameter">
        <cs:ScalarProperty Name="Id" ColumnName="Id" />
      </cs:EndProperty>
    </cs:AssociationSetMapping>

  </cs:EntityContainerMapping>

</Mapping>�s<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="MySqlClient" 
        Provider="MySql.Data.MySqlClient"
        ProviderManifestToken="5"
        Alias="Self" 
        xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
  <EntityContainer Name="Schema">
    
    <EntitySet Name="STables" EntityType="Self.Table">
      <DefiningQuery>
		  SELECT /* Tables */
		  CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
		  TABLE_CATALOG AS `Catalog`,
		  TABLE_SCHEMA  AS `Schema`,
		  TABLE_NAME    AS `Name`
		  FROM INFORMATION_SCHEMA.TABLES
		  WHERE TABLE_TYPE = 'BASE TABLE'
      AND TABLE_SCHEMA=schema()
	  </DefiningQuery>
    </EntitySet>
    
    <EntitySet Name="STableColumns" EntityType="Self.TableColumn">
      <DefiningQuery>
        SELECT /* Table columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViews" EntityType="Self.View">
      <DefiningQuery>
        SELECT /* Views */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
        TABLE_CATALOG AS`CatalogName`,
        TABLE_SCHEMA AS `SchemaName`,
        TABLE_NAME AS `Name`,
        VIEW_DEFINITION AS `ViewDefinition`,
        CASE IS_UPDATABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsUpdatable`
        FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewColumns" EntityType="Self.ViewColumn">
      <DefiningQuery>
        SELECT /* View columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctions" EntityType="Self.Function">
      <DefiningQuery>
        SELECT /* Functions */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`,
        SUBSTRING_INDEX(DTD_IDENTIFIER, '(', 1) AS `ReturnTypeName`,
        NULL AS `ReturnMaxLength`,
        NULL AS `ReturnPrecision`,
        0 AS `ReturnDateTimePrecision`,
        NULL AS `ReturnScale`,
        NULL AS `ReturnCollationCatalog`,
        NULL AS `ReturnCollationSchema`,
        NULL AS `ReturnCollationName`,
        NULL AS `ReturnCharacterSetCatalog`,
        NULL AS `ReturnCharacterSetSchema`,
        NULL AS `ReturnCharacterSetName`,
        NULL AS `ReturnIsMultiSet`,
        NULL AS `IsAggregate`,
        NULL AS `IsBuiltIn`,
        NULL AS `IsNiladic`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='FUNCTION'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedures" EntityType="Self.Procedure">
      <DefiningQuery>
        SELECT /* Procedures */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='PROCEDURE'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
    
<!-- 6.0 -->
    <EntitySet Name="SFunctionParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT /* Function parameters */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `Ordinal`,
        NULL AS `TypeName`,
        NULL AS `MaxLength`,
        NULL AS `Precision`,
        NULL AS `DateTimePrecision`,
        NULL AS `Scale`,
        NULL AS `CollatioCatalog`,
        NULL AS `CollationSchema`,
        NULL AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        NULL AS `CharacterSetName`,
        NULL AS `IsMultiSet`,
        NULL AS `Mode`,
        NULL AS `Default`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedureParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT /* Procedure parameters */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `Ordinal`,
        NULL AS `TypeName`,
        NULL AS `MaxLength`,
        NULL AS `Precision`,
        NULL AS `DateTimePrecision`,
        NULL AS `Scale`,
        NULL AS `CollatioCatalog`,
        NULL AS `CollationSchema`,
        NULL AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        NULL AS `CharacterSetName`,
        NULL AS `IsMultiSet`,
        NULL AS `Mode`,
        NULL AS `Default`
      </DefiningQuery>
    </EntitySet>
<!-- End 6.0 -->
    
    <EntitySet Name="SConstraints" EntityType="Self.Constraint">
      <DefiningQuery>
        SELECT  /* Constraints */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        CONSTRAINT_NAME AS `Name`,
        CONSTRAINT_TYPE AS `ConstraintType`,
        0 AS `IsDeferrable`,
        0 AS `IsInitiallyDeferred`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE != 'CHECK' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SCheckConstraints" EntityType="Self.CheckConstraint">
      <DefiningQuery>
        SELECT  /* Check constraints */
        NULL AS `Id`,
        NULL AS `Expression`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* Constraint columns */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `ConstraintId`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `ColumnId`
        FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        'NO ACTION' AS `UpdateRule`,
        'NO ACTION' AS `DeleteRule`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS WHERE CONSTRAINT_TYPE='FOREIGN KEY'
      </DefiningQuery>
    </EntitySet>
       
    <EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT  /* Foreign keys */
        CONCAT(KCU.TABLE_SCHEMA, '.', KCU.CONSTRAINT_NAME, '.', KCU.ORDINAL_POSITION) AS `Id`,
        CONCAT(KCU.REFERENCED_TABLE_SCHEMA, '.', KCU.REFERENCED_TABLE_NAME, '.', KCU.REFERENCED_COLUMN_NAME) AS `ToColumnId`,
        CONCAT(KCU.TABLE_SCHEMA, '.', KCU.TABLE_NAME, '.', KCU.COLUMN_NAME) AS `FromColumnId`,
        CONCAT(KCU.TABLE_SCHEMA, '.', KCU.TABLE_NAME, '.', KCU.CONSTRAINT_NAME) AS `ConstraintId`,
        KCU.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE KCU
        WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY'
        AND TC.TABLE_SCHEMA = KCU.TABLE_SCHEMA
        AND TC.TABLE_NAME = KCU.TABLE_NAME
        AND TC.CONSTRAINT_NAME = KCU.CONSTRAINT_NAME
        AND TC.TABLE_SCHEMA = schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraints" EntityType="Self.ViewConstraint">
      <DefiningQuery>
        SELECT /* View constraints */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `ConstraintType`,
        NULL AS `Expression`,
        NULL AS `UpdateRule`,
        NULL AS `DeleteRule`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* View constraint columns */
        NULL AS `ConstraintId`,
        NULL AS `ColumnId`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT /* View foreign keys */
        NULL AS `Id`,
        NULL AS `ToColumnId`,
        NULL AS `FromColumnId`,
        NULL AS `ConstraintId`,
        0 AS `Ordinal`
      </DefiningQuery>
    </EntitySet>

    <AssociationSet Name="STableTableColumns" Association="Self.TableTableColumn" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="STableConstraints" Association="Self.TableTableConstraint" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintConstraintColumns" Association="Self.ConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SConstraintColumns"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintForeignKeys" Association="Self.ConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Constraint" EntitySet="SForeignKeyConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyColumns" Association="Self.FromForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyColumns" Association="Self.ToForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>

    <AssociationSet Name="SViewViewColumns" Association="Self.ViewViewColumn" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SViewViewConstraints" Association="Self.ViewViewConstraint" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintConstraintColumns" Association="Self.ViewConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SViewConstraintColumns"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintForeignKeys" Association="Self.ViewConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyViewColumns" Association="Self.FromForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyViewColumns" Association="Self.ToForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>

    <AssociationSet Name="FunctionFunctionParameters" Association="Self.FunctionFunctionParameter">
      <End Role="Function" EntitySet="SFunctions"/>
      <End Role="Parameter" EntitySet="SFunctionParameters"/>
    </AssociationSet>
    <AssociationSet Name="ProcedureProcedureParameters" Association="Self.ProcedureProcedureParameter" >
      <End Role="Procedure" EntitySet="SProcedures"/>
      <End Role="Parameter" EntitySet="SProcedureParameters"/>
    </AssociationSet>
  </EntityContainer>

  <EntityType Name="Table">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Catalog" Type="varchar" MaxLength="256" />
    <Property Name="Schema" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>



  <EntityType Name="TableColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength ="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="View">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="CatalogName" Type="varchar" MaxLength="256" />
    <Property Name="SchemaName" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ViewDefinition" Nullable="true" Type="text" />
    <Property Name="IsUpdatable" Nullable="false" Type="bit" />
  </EntityType>

  <EntityType Name="ViewColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="Function">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ReturnTypeName" Type="varchar" MaxLength="256" />
    <Property Name="ReturnMaxLength" Type="bigint" />
    <Property Name="ReturnPrecision" Type="bigint" />
    <Property Name="ReturnDateTimePrecision" Type="int" />
    <Property Name="ReturnScale" Type="bigint" />
    <Property Name="ReturnCollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnIsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsAggregate" Type="bit" />
    <Property Name="IsBuiltIn" Type="bit" />
    <Property Name="IsNiladic" Type="bit" />
  </EntityType>

  <EntityType Name="Procedure">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
  </EntityType>

  <EntityType Name="Parameter">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Ordinal" Nullable="false" Type="int"/>
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Nullable="true" Type="bigint" />
    <Property Name="Precision" Nullable="true" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Nullable="true" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="Mode" Type="varchar" MaxLength="16" />
    <Property Name="Default" Type="longtext" />
  </EntityType>

  <EntityType Name="Constraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="CheckConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
  </EntityType>

  <EntityType Name="ConstraintColumn">
    <Key>
      <PropertyRef Name="ConstraintId" />
      <PropertyRef Name="ColumnId" />
    </Key>
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ColumnId" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>

  <EntityType Name="ForeignKeyConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="UpdateRule" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="ForeignKey">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="int" />
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="FromColumnId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ToColumnId" Nullable="false" Type="varchar" MaxLength ="256" />
  </EntityType>

  <EntityType Name="ViewConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
    <Property Name="UpdateRule" Nullable="true" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="true" MaxLength="11" Type="varchar" />
  </EntityType>

  <Association Name="TableTableConstraint">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintConstraintColumn">
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintForeignKey">
    <End Type="Self.ForeignKeyConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="TableTableColumn">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.TableColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewColumn">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FunctionFunctionParameter">
    <End Type="Self.Function" Role="Function" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Function">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ProcedureProcedureParameter">
    <End Type="Self.Procedure" Role="Procedure" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Procedure">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewConstraint">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintConstraintColumn">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintForeignKey">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>  
</Schema>-<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="MySqlClient" 
        Provider="MySql.Data.MySqlClient"
        ProviderManifestToken="5"
        Alias="Self" 
        xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
  <EntityContainer Name="Schema">
    
    <EntitySet Name="STables" EntityType="Self.Table">
      <DefiningQuery>
		  SELECT /* Tables */
		  CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
		  TABLE_CATALOG AS `Catalog`,
		  TABLE_SCHEMA  AS `Schema`,
		  TABLE_NAME    AS `Name`
		  FROM INFORMATION_SCHEMA.TABLES
		  WHERE TABLE_TYPE = 'BASE TABLE'
      AND TABLE_SCHEMA=schema()
	  </DefiningQuery>
    </EntitySet>
    
    <EntitySet Name="STableColumns" EntityType="Self.TableColumn">
      <DefiningQuery>
        SELECT /* Table columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViews" EntityType="Self.View">
      <DefiningQuery>
        SELECT /* Views */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
        TABLE_CATALOG AS`CatalogName`,
        TABLE_SCHEMA AS `SchemaName`,
        TABLE_NAME AS `Name`,
        VIEW_DEFINITION AS `ViewDefinition`,
        CASE IS_UPDATABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsUpdatable`
        FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewColumns" EntityType="Self.ViewColumn">
      <DefiningQuery>
        SELECT /* View columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctions" EntityType="Self.Function">
      <DefiningQuery>
        SELECT /* Functions */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`,
        SUBSTRING_INDEX(DTD_IDENTIFIER, '(', 1) AS `ReturnTypeName`,
        NULL AS `ReturnMaxLength`,
        NULL AS `ReturnPrecision`,
        0 AS `ReturnDateTimePrecision`,
        NULL AS `ReturnScale`,
        NULL AS `ReturnCollationCatalog`,
        NULL AS `ReturnCollationSchema`,
        NULL AS `ReturnCollationName`,
        NULL AS `ReturnCharacterSetCatalog`,
        NULL AS `ReturnCharacterSetSchema`,
        NULL AS `ReturnCharacterSetName`,
        NULL AS `ReturnIsMultiSet`,
        NULL AS `IsAggregate`,
        NULL AS `IsBuiltIn`,
        NULL AS `IsNiladic`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='FUNCTION'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedures" EntityType="Self.Procedure">
      <DefiningQuery>
        SELECT /* Procedures */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='PROCEDURE'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctionParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'FUNCTION'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedureParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'PROCEDURE'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraints" EntityType="Self.Constraint">
      <DefiningQuery>
        SELECT  /* Constraints */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        CONSTRAINT_NAME AS `Name`,
        CONSTRAINT_TYPE AS `ConstraintType`,
        0 AS `IsDeferrable`,
        0 AS `IsInitiallyDeferred`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE != 'CHECK' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SCheckConstraints" EntityType="Self.CheckConstraint">
      <DefiningQuery>
        SELECT  /* Check constraints */
        NULL AS `Id`,
        NULL AS `Expression`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* Constraint columns */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `ConstraintId`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `ColumnId`
        FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

<!--
    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT /* Foreign key constraints */
        CONCAT('`', TABLE_SCHEMA, '`.`', CONSTRAINT_NAME, '`') AS `Id`,
        'NO ACTION' AS `UpdateRule`,
        'NO ACTION' AS `DeleteRule`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE = 'FOREIGN KEY' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
-->

    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        UPDATE_RULE AS `UpdateRule`,
        DELETE_RULE AS `DeleteRule`
        FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.CONSTRAINT_NAME, '.', FC.ORDINAL_POSITION) AS `Id`,
        CONCAT(PC.TABLE_SCHEMA, '.', PC.TABLE_NAME, '.', PC.COLUMN_NAME) AS `ToColumnId`,
        CONCAT(FC.TABLE_SCHEMA, '.', FC.TABLE_NAME, '.', FC.COLUMN_NAME) AS `FromColumnId`,
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.TABLE_NAME, '.', FC.CONSTRAINT_NAME) AS `ConstraintId`,
        FC.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS PC /* PRIMARY KEY COLS*/
        ON       RC.UNIQUE_CONSTRAINT_SCHEMA =  PC.CONSTRAINT_SCHEMA
        AND      RC.UNIQUE_CONSTRAINT_NAME    = PC.CONSTRAINT_NAME
        AND      RC.REFERENCED_TABLE_NAME     = PC.TABLE_NAME
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS FC /* FOREIGN KEY COLS*/
        ON       RC.CONSTRAINT_SCHEMA  = FC.CONSTRAINT_SCHEMA
        AND      RC.CONSTRAINT_NAME    = FC.CONSTRAINT_NAME
        AND      RC.TABLE_NAME         = FC.TABLE_NAME
        AND      PC.ORDINAL_POSITION   = FC.ORDINAL_POSITION
<!--        WHERE FC.CONSTRAINT_SCHEMA='test3'-->
      </DefiningQuery>
    </EntitySet>    
    
    <!--<EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT  /* Foreign keys */
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`',
               KEYCOLS.CONSTRAINT_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `Id`,
        CONCAT('`', KEYCOLS.REFERENCED_TABLE_SCHEMA, '`.`', 
               KEYCOLS.REFERENCED_TABLE_NAME, '`.`', 
               KEYCOLS.REFERENCED_COLUMN_NAME, '`') AS `ToColumnId`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `FromColumnId`,
        KEYCOLS.COLUMN_NAME AS `Name`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.CONSTRAINT_NAME, '`') AS `ConstraintId`,
        KEYCOLS.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE KEYCOLS
        WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY'
        AND TC.TABLE_SCHEMA = KEYCOLS.TABLE_SCHEMA
        AND TC.TABLE_NAME = KEYCOLS.TABLE_NAME
        AND TC.CONSTRAINT_NAME = KEYCOLS.CONSTRAINT_NAME
        AND TC.TABLE_SCHEMA = schema()
      </DefiningQuery>
    </EntitySet>-->

    <EntitySet Name="SViewConstraints" EntityType="Self.ViewConstraint">
      <DefiningQuery>
        SELECT /* View constraints */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `ConstraintType`,
        NULL AS `Expression`,
        NULL AS `UpdateRule`,
        NULL AS `DeleteRule`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* View constraint columns */
        NULL AS `ConstraintId`,
        NULL AS `ColumnId`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT /* View foreign keys */
        NULL AS `Id`,
        NULL AS `ToColumnId`,
        NULL AS `FromColumnId`,
        NULL AS `ConstraintId`,
        0 AS `Ordinal`
      </DefiningQuery>
    </EntitySet>

    <AssociationSet Name="STableTableColumns" Association="Self.TableTableColumn" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="STableConstraints" Association="Self.TableTableConstraint" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintConstraintColumns" Association="Self.ConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SConstraintColumns"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintForeignKeys" Association="Self.ConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Constraint" EntitySet="SForeignKeyConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyColumns" Association="Self.FromForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyColumns" Association="Self.ToForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>

    <AssociationSet Name="SViewViewColumns" Association="Self.ViewViewColumn" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SViewViewConstraints" Association="Self.ViewViewConstraint" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintConstraintColumns" Association="Self.ViewConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SViewConstraintColumns"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintForeignKeys" Association="Self.ViewConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyViewColumns" Association="Self.FromForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyViewColumns" Association="Self.ToForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>

    <AssociationSet Name="FunctionFunctionParameters" Association="Self.FunctionFunctionParameter">
      <End Role="Function" EntitySet="SFunctions"/>
      <End Role="Parameter" EntitySet="SFunctionParameters"/>
    </AssociationSet>
    <AssociationSet Name="ProcedureProcedureParameters" Association="Self.ProcedureProcedureParameter" >
      <End Role="Procedure" EntitySet="SProcedures"/>
      <End Role="Parameter" EntitySet="SProcedureParameters"/>
    </AssociationSet>
  </EntityContainer>

  <EntityType Name="Table">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Catalog" Type="varchar" MaxLength="256" />
    <Property Name="Schema" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>



  <EntityType Name="TableColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength ="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="View">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="CatalogName" Type="varchar" MaxLength="256" />
    <Property Name="SchemaName" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ViewDefinition" Nullable="true" Type="text" />
    <Property Name="IsUpdatable" Nullable="false" Type="bit" />
  </EntityType>

  <EntityType Name="ViewColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="Function">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ReturnTypeName" Type="varchar" MaxLength="256" />
    <Property Name="ReturnMaxLength" Type="bigint" />
    <Property Name="ReturnPrecision" Type="bigint" />
    <Property Name="ReturnDateTimePrecision" Type="int" />
    <Property Name="ReturnScale" Type="bigint" />
    <Property Name="ReturnCollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnIsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsAggregate" Type="bit" />
    <Property Name="IsBuiltIn" Type="bit" />
    <Property Name="IsNiladic" Type="bit" />
  </EntityType>

  <EntityType Name="Procedure">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
  </EntityType>

  <EntityType Name="Parameter">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Ordinal" Nullable="false" Type="int"/>
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Nullable="true" Type="bigint" />
    <Property Name="Precision" Nullable="true" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Nullable="true" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="Mode" Type="varchar" MaxLength="16" />
    <Property Name="Default" Type="longtext" />
  </EntityType>

  <EntityType Name="Constraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="CheckConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
  </EntityType>

  <EntityType Name="ConstraintColumn">
    <Key>
      <PropertyRef Name="ConstraintId" />
      <PropertyRef Name="ColumnId" />
    </Key>
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ColumnId" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>

  <EntityType Name="ForeignKeyConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="UpdateRule" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="ForeignKey">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="int" />
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="FromColumnId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ToColumnId" Nullable="false" Type="varchar" MaxLength ="256" />
  </EntityType>

  <EntityType Name="ViewConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
    <Property Name="UpdateRule" Nullable="true" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="true" MaxLength="11" Type="varchar" />
  </EntityType>

  <Association Name="TableTableConstraint">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintConstraintColumn">
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintForeignKey">
    <End Type="Self.ForeignKeyConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="TableTableColumn">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.TableColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewColumn">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FunctionFunctionParameter">
    <End Type="Self.Function" Role="Function" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Function">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ProcedureProcedureParameter">
    <End Type="Self.Procedure" Role="Procedure" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Procedure">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewConstraint">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintConstraintColumn">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintForeignKey">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>  
</Schema>�v<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="MySqlClient" 
        Provider="MySql.Data.MySqlClient"
        ProviderManifestToken="5"
        Alias="Self" 
        xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
  <EntityContainer Name="Schema">
    
    <EntitySet Name="STables" EntityType="Self.Table">
      <DefiningQuery>
		  SELECT /* Tables */
		  CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
		  TABLE_CATALOG AS `Catalog`,
		  TABLE_SCHEMA  AS `Schema`,
		  TABLE_NAME    AS `Name`
		  FROM INFORMATION_SCHEMA.TABLES
		  WHERE TABLE_TYPE = 'BASE TABLE'
      AND TABLE_SCHEMA=schema()
	  </DefiningQuery>
    </EntitySet>
    
    <EntitySet Name="STableColumns" EntityType="Self.TableColumn">
      <DefiningQuery>
        SELECT /* Table columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        IF (COLUMN_TYPE = 'tinyint(1)', -128, COLUMN_DEFAULT) AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViews" EntityType="Self.View">
      <DefiningQuery>
        SELECT /* Views */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
        TABLE_CATALOG AS`CatalogName`,
        TABLE_SCHEMA AS `SchemaName`,
        TABLE_NAME AS `Name`,
        VIEW_DEFINITION AS `ViewDefinition`,
        CASE IS_UPDATABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsUpdatable`
        FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewColumns" EntityType="Self.ViewColumn">
      <DefiningQuery>
        SELECT /* View columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
          IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
            IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
              CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        NUMERIC_PRECISION AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsIdentity`,
        CASE WHEN EXTRA LIKE '%auto%' THEN 1 ELSE 0 END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctions" EntityType="Self.Function">
      <DefiningQuery>
        SELECT /* Functions */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`,
        SUBSTRING_INDEX(DTD_IDENTIFIER, '(', 1) AS `ReturnTypeName`,
        NULL AS `ReturnMaxLength`,
        NULL AS `ReturnPrecision`,
        0 AS `ReturnDateTimePrecision`,
        NULL AS `ReturnScale`,
        NULL AS `ReturnCollationCatalog`,
        NULL AS `ReturnCollationSchema`,
        NULL AS `ReturnCollationName`,
        NULL AS `ReturnCharacterSetCatalog`,
        NULL AS `ReturnCharacterSetSchema`,
        NULL AS `ReturnCharacterSetName`,
        NULL AS `ReturnIsMultiSet`,
        NULL AS `IsAggregate`,
        NULL AS `IsBuiltIn`,
        NULL AS `IsNiladic`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='FUNCTION'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedures" EntityType="Self.Procedure">
      <DefiningQuery>
        SELECT /* Procedures */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='PROCEDURE'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
    
<!-- 6.0 -->
    <EntitySet Name="SFunctionParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT /* Function parameters */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `Ordinal`,
        NULL AS `TypeName`,
        NULL AS `MaxLength`,
        NULL AS `Precision`,
        NULL AS `DateTimePrecision`,
        NULL AS `Scale`,
        NULL AS `CollatioCatalog`,
        NULL AS `CollationSchema`,
        NULL AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        NULL AS `CharacterSetName`,
        NULL AS `IsMultiSet`,
        NULL AS `Mode`,
        NULL AS `Default`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedureParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT /* Procedure parameters */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `Ordinal`,
        NULL AS `TypeName`,
        NULL AS `MaxLength`,
        NULL AS `Precision`,
        NULL AS `DateTimePrecision`,
        NULL AS `Scale`,
        NULL AS `CollatioCatalog`,
        NULL AS `CollationSchema`,
        NULL AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        NULL AS `CharacterSetName`,
        NULL AS `IsMultiSet`,
        NULL AS `Mode`,
        NULL AS `Default`
      </DefiningQuery>
    </EntitySet>
<!-- End 6.0 -->
    
    <EntitySet Name="SConstraints" EntityType="Self.Constraint">
      <DefiningQuery>
        SELECT  /* Constraints */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        CONSTRAINT_NAME AS `Name`,
        CONSTRAINT_TYPE AS `ConstraintType`,
        0 AS `IsDeferrable`,
        0 AS `IsInitiallyDeferred`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE != 'CHECK' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SCheckConstraints" EntityType="Self.CheckConstraint">
      <DefiningQuery>
        SELECT  /* Check constraints */
        NULL AS `Id`,
        NULL AS `Expression`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* Constraint columns */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `ConstraintId`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `ColumnId`
        FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

<!--
    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT /* Foreign key constraints */
        CONCAT('`', TABLE_SCHEMA, '`.`', CONSTRAINT_NAME, '`') AS `Id`,
        'NO ACTION' AS `UpdateRule`,
        'NO ACTION' AS `DeleteRule`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE = 'FOREIGN KEY' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
-->

    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        UPDATE_RULE AS `UpdateRule`,
        DELETE_RULE AS `DeleteRule`
        FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.CONSTRAINT_NAME, '.', FC.ORDINAL_POSITION) AS `Id`,
        CONCAT(PC.TABLE_SCHEMA, '.', PC.TABLE_NAME, '.', PC.COLUMN_NAME) AS `ToColumnId`,
        CONCAT(FC.TABLE_SCHEMA, '.', FC.TABLE_NAME, '.', FC.COLUMN_NAME) AS `FromColumnId`,
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.TABLE_NAME, '.', FC.CONSTRAINT_NAME) AS `ConstraintId`,
        FC.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS PC /* PRIMARY KEY COLS*/
        ON       RC.UNIQUE_CONSTRAINT_SCHEMA =  PC.CONSTRAINT_SCHEMA
        AND      RC.UNIQUE_CONSTRAINT_NAME    = PC.CONSTRAINT_NAME
        AND      RC.REFERENCED_TABLE_NAME     = PC.TABLE_NAME
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS FC /* FOREIGN KEY COLS*/
        ON       RC.CONSTRAINT_SCHEMA  = FC.CONSTRAINT_SCHEMA
        AND      RC.CONSTRAINT_NAME    = FC.CONSTRAINT_NAME
        AND      RC.TABLE_NAME         = FC.TABLE_NAME
        AND      PC.ORDINAL_POSITION   = FC.ORDINAL_POSITION
<!--        WHERE FC.CONSTRAINT_SCHEMA='test3'-->
      </DefiningQuery>
    </EntitySet>    

    <EntitySet Name="SViewConstraints" EntityType="Self.ViewConstraint">
      <DefiningQuery>
        SELECT /* View constraints */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `ConstraintType`,
        NULL AS `Expression`,
        NULL AS `UpdateRule`,
        NULL AS `DeleteRule`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* View constraint columns */
        NULL AS `ConstraintId`,
        NULL AS `ColumnId`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT /* View foreign keys */
        NULL AS `Id`,
        NULL AS `ToColumnId`,
        NULL AS `FromColumnId`,
        NULL AS `ConstraintId`,
        0 AS `Ordinal`
      </DefiningQuery>
    </EntitySet>

    <AssociationSet Name="STableTableColumns" Association="Self.TableTableColumn" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="STableConstraints" Association="Self.TableTableConstraint" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintConstraintColumns" Association="Self.ConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SConstraintColumns"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintForeignKeys" Association="Self.ConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Constraint" EntitySet="SForeignKeyConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyColumns" Association="Self.FromForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyColumns" Association="Self.ToForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>

    <AssociationSet Name="SViewViewColumns" Association="Self.ViewViewColumn" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SViewViewConstraints" Association="Self.ViewViewConstraint" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintConstraintColumns" Association="Self.ViewConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SViewConstraintColumns"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintForeignKeys" Association="Self.ViewConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyViewColumns" Association="Self.FromForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyViewColumns" Association="Self.ToForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>

    <AssociationSet Name="FunctionFunctionParameters" Association="Self.FunctionFunctionParameter">
      <End Role="Function" EntitySet="SFunctions"/>
      <End Role="Parameter" EntitySet="SFunctionParameters"/>
    </AssociationSet>
    <AssociationSet Name="ProcedureProcedureParameters" Association="Self.ProcedureProcedureParameter" >
      <End Role="Procedure" EntitySet="SProcedures"/>
      <End Role="Parameter" EntitySet="SProcedureParameters"/>
    </AssociationSet>
  </EntityContainer>

  <EntityType Name="Table">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Catalog" Type="varchar" MaxLength="256" />
    <Property Name="Schema" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>



  <EntityType Name="TableColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength ="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="View">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="CatalogName" Type="varchar" MaxLength="256" />
    <Property Name="SchemaName" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ViewDefinition" Nullable="true" Type="text" />
    <Property Name="IsUpdatable" Nullable="false" Type="bit" />
  </EntityType>

  <EntityType Name="ViewColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="Function">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ReturnTypeName" Type="varchar" MaxLength="256" />
    <Property Name="ReturnMaxLength" Type="bigint" />
    <Property Name="ReturnPrecision" Type="bigint" />
    <Property Name="ReturnDateTimePrecision" Type="int" />
    <Property Name="ReturnScale" Type="bigint" />
    <Property Name="ReturnCollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnIsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsAggregate" Type="bit" />
    <Property Name="IsBuiltIn" Type="bit" />
    <Property Name="IsNiladic" Type="bit" />
  </EntityType>

  <EntityType Name="Procedure">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
  </EntityType>

  <EntityType Name="Parameter">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Ordinal" Nullable="false" Type="int"/>
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Nullable="true" Type="bigint" />
    <Property Name="Precision" Nullable="true" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Nullable="true" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="Mode" Type="varchar" MaxLength="16" />
    <Property Name="Default" Type="longtext" />
  </EntityType>

  <EntityType Name="Constraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="CheckConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
  </EntityType>

  <EntityType Name="ConstraintColumn">
    <Key>
      <PropertyRef Name="ConstraintId" />
      <PropertyRef Name="ColumnId" />
    </Key>
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ColumnId" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>

  <EntityType Name="ForeignKeyConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="UpdateRule" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="ForeignKey">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="int" />
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="FromColumnId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ToColumnId" Nullable="false" Type="varchar" MaxLength ="256" />
  </EntityType>

  <EntityType Name="ViewConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
    <Property Name="UpdateRule" Nullable="true" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="true" MaxLength="11" Type="varchar" />
  </EntityType>

  <Association Name="TableTableConstraint">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintConstraintColumn">
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintForeignKey">
    <End Type="Self.ForeignKeyConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="TableTableColumn">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.TableColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewColumn">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FunctionFunctionParameter">
    <End Type="Self.Function" Role="Function" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Function">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ProcedureProcedureParameter">
    <End Type="Self.Procedure" Role="Procedure" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Procedure">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewConstraint">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintConstraintColumn">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintForeignKey">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>  
</Schema>��<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="MySqlClient" 
        Provider="MySql.Data.MySqlClient"
        ProviderManifestToken="5"
        Alias="Self" 
        xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
  <EntityContainer Name="Schema">
    
    <EntitySet Name="STables" EntityType="Self.Table">
      <DefiningQuery>
		  SELECT /* Tables */
		  CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
		  TABLE_CATALOG AS `Catalog`,
		  TABLE_SCHEMA  AS `Schema`,
		  TABLE_NAME    AS `Name`
		  FROM INFORMATION_SCHEMA.TABLES
		  WHERE TABLE_TYPE = 'BASE TABLE'
      AND TABLE_SCHEMA=schema()
	  </DefiningQuery>
    </EntitySet>
    
    <EntitySet Name="STableColumns" EntityType="Self.TableColumn">
      <DefiningQuery>
        SELECT /* Table columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
        IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
        IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
        CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        CASE WHEN NUMERIC_PRECISION > 0 THEN CAST(NUMERIC_PRECISION AS CHAR)
        WHEN DATETIME_PRECISION > 0 THEN CAST(DATETIME_PRECISION AS CHAR)
        ELSE 0
        END AS `Precision`,
        DATETIME_PRECISION AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsIdentity`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViews" EntityType="Self.View">
      <DefiningQuery>
        SELECT /* Views */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
        TABLE_CATALOG AS`CatalogName`,
        TABLE_SCHEMA AS `SchemaName`,
        TABLE_NAME AS `Name`,
        VIEW_DEFINITION AS `ViewDefinition`,
        CASE IS_UPDATABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsUpdatable`
        FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewColumns" EntityType="Self.ViewColumn">
      <DefiningQuery>
        SELECT /* View columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
        IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
        IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
        CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        CASE WHEN NUMERIC_PRECISION > 0 THEN CAST(NUMERIC_PRECISION AS UNSIGNED INTEGER)
        WHEN DATETIME_PRECISION > 0 THEN CAST(DATETIME_PRECISION AS UNSIGNED INTEGER)
        ELSE 0
        END AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsIdentity`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctions" EntityType="Self.Function">
      <DefiningQuery>
        SELECT /* Functions */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`,
        SUBSTRING_INDEX(DTD_IDENTIFIER, '(', 1) AS `ReturnTypeName`,
        NULL AS `ReturnMaxLength`,
        NULL AS `ReturnPrecision`,
        0 AS `ReturnDateTimePrecision`,
        NULL AS `ReturnScale`,
        NULL AS `ReturnCollationCatalog`,
        NULL AS `ReturnCollationSchema`,
        NULL AS `ReturnCollationName`,
        NULL AS `ReturnCharacterSetCatalog`,
        NULL AS `ReturnCharacterSetSchema`,
        NULL AS `ReturnCharacterSetName`,
        NULL AS `ReturnIsMultiSet`,
        NULL AS `IsAggregate`,
        NULL AS `IsBuiltIn`,
        NULL AS `IsNiladic`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='FUNCTION'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedures" EntityType="Self.Procedure">
      <DefiningQuery>
        SELECT /* Procedures */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='PROCEDURE'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctionParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'FUNCTION'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedureParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'PROCEDURE'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraints" EntityType="Self.Constraint">
      <DefiningQuery>
        SELECT  /* Constraints */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        CONSTRAINT_NAME AS `Name`,
        CONSTRAINT_TYPE AS `ConstraintType`,
        0 AS `IsDeferrable`,
        0 AS `IsInitiallyDeferred`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE != 'CHECK' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SCheckConstraints" EntityType="Self.CheckConstraint">
      <DefiningQuery>
        SELECT  /* Check constraints */
        NULL AS `Id`,
        NULL AS `Expression`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* Constraint columns */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `ConstraintId`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `ColumnId`
        FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

<!--
    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT /* Foreign key constraints */
        CONCAT('`', TABLE_SCHEMA, '`.`', CONSTRAINT_NAME, '`') AS `Id`,
        'NO ACTION' AS `UpdateRule`,
        'NO ACTION' AS `DeleteRule`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE = 'FOREIGN KEY' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
-->

    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        UPDATE_RULE AS `UpdateRule`,
        DELETE_RULE AS `DeleteRule`
        FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.CONSTRAINT_NAME, '.', FC.ORDINAL_POSITION) AS `Id`,
        CONCAT(PC.TABLE_SCHEMA, '.', PC.TABLE_NAME, '.', PC.COLUMN_NAME) AS `ToColumnId`,
        CONCAT(FC.TABLE_SCHEMA, '.', FC.TABLE_NAME, '.', FC.COLUMN_NAME) AS `FromColumnId`,
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.TABLE_NAME, '.', FC.CONSTRAINT_NAME) AS `ConstraintId`,
        FC.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS PC /* PRIMARY KEY COLS*/
        ON       RC.UNIQUE_CONSTRAINT_SCHEMA =  PC.CONSTRAINT_SCHEMA
        AND      RC.UNIQUE_CONSTRAINT_NAME    = PC.CONSTRAINT_NAME
        AND      RC.REFERENCED_TABLE_NAME     = PC.TABLE_NAME
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS FC /* FOREIGN KEY COLS*/
        ON       RC.CONSTRAINT_SCHEMA  = FC.CONSTRAINT_SCHEMA
        AND      RC.CONSTRAINT_NAME    = FC.CONSTRAINT_NAME
        AND      RC.TABLE_NAME         = FC.TABLE_NAME
        AND      PC.ORDINAL_POSITION   = FC.ORDINAL_POSITION
<!--        WHERE FC.CONSTRAINT_SCHEMA='test3'-->
      </DefiningQuery>
    </EntitySet>    
    
    <!--<EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT  /* Foreign keys */
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`',
               KEYCOLS.CONSTRAINT_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `Id`,
        CONCAT('`', KEYCOLS.REFERENCED_TABLE_SCHEMA, '`.`', 
               KEYCOLS.REFERENCED_TABLE_NAME, '`.`', 
               KEYCOLS.REFERENCED_COLUMN_NAME, '`') AS `ToColumnId`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `FromColumnId`,
        KEYCOLS.COLUMN_NAME AS `Name`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.CONSTRAINT_NAME, '`') AS `ConstraintId`,
        KEYCOLS.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE KEYCOLS
        WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY'
        AND TC.TABLE_SCHEMA = KEYCOLS.TABLE_SCHEMA
        AND TC.TABLE_NAME = KEYCOLS.TABLE_NAME
        AND TC.CONSTRAINT_NAME = KEYCOLS.CONSTRAINT_NAME
        AND TC.TABLE_SCHEMA = schema()
      </DefiningQuery>
    </EntitySet>-->

    <EntitySet Name="SViewConstraints" EntityType="Self.ViewConstraint">
      <DefiningQuery>
        SELECT /* View constraints */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `ConstraintType`,
        NULL AS `Expression`,
        NULL AS `UpdateRule`,
        NULL AS `DeleteRule`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* View constraint columns */
        NULL AS `ConstraintId`,
        NULL AS `ColumnId`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT /* View foreign keys */
        NULL AS `Id`,
        NULL AS `ToColumnId`,
        NULL AS `FromColumnId`,
        NULL AS `ConstraintId`,
        0 AS `Ordinal`
      </DefiningQuery>
    </EntitySet>

    <AssociationSet Name="STableTableColumns" Association="Self.TableTableColumn" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="STableConstraints" Association="Self.TableTableConstraint" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintConstraintColumns" Association="Self.ConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SConstraintColumns"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintForeignKeys" Association="Self.ConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Constraint" EntitySet="SForeignKeyConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyColumns" Association="Self.FromForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyColumns" Association="Self.ToForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>

    <AssociationSet Name="SViewViewColumns" Association="Self.ViewViewColumn" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SViewViewConstraints" Association="Self.ViewViewConstraint" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintConstraintColumns" Association="Self.ViewConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SViewConstraintColumns"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintForeignKeys" Association="Self.ViewConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyViewColumns" Association="Self.FromForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyViewColumns" Association="Self.ToForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>

    <AssociationSet Name="FunctionFunctionParameters" Association="Self.FunctionFunctionParameter">
      <End Role="Function" EntitySet="SFunctions"/>
      <End Role="Parameter" EntitySet="SFunctionParameters"/>
    </AssociationSet>
    <AssociationSet Name="ProcedureProcedureParameters" Association="Self.ProcedureProcedureParameter" >
      <End Role="Procedure" EntitySet="SProcedures"/>
      <End Role="Parameter" EntitySet="SProcedureParameters"/>
    </AssociationSet>
  </EntityContainer>

  <EntityType Name="Table">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Catalog" Type="varchar" MaxLength="256" />
    <Property Name="Schema" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>



  <EntityType Name="TableColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength ="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="View">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="CatalogName" Type="varchar" MaxLength="256" />
    <Property Name="SchemaName" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ViewDefinition" Nullable="true" Type="text" />
    <Property Name="IsUpdatable" Nullable="false" Type="bit" />
  </EntityType>

  <EntityType Name="ViewColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="Function">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ReturnTypeName" Type="varchar" MaxLength="256" />
    <Property Name="ReturnMaxLength" Type="bigint" />
    <Property Name="ReturnPrecision" Type="bigint" />
    <Property Name="ReturnDateTimePrecision" Type="int" />
    <Property Name="ReturnScale" Type="bigint" />
    <Property Name="ReturnCollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnIsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsAggregate" Type="bit" />
    <Property Name="IsBuiltIn" Type="bit" />
    <Property Name="IsNiladic" Type="bit" />
  </EntityType>

  <EntityType Name="Procedure">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
  </EntityType>

  <EntityType Name="Parameter">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Ordinal" Nullable="false" Type="int"/>
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Nullable="true" Type="bigint" />
    <Property Name="Precision" Nullable="true" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Nullable="true" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="Mode" Type="varchar" MaxLength="16" />
    <Property Name="Default" Type="longtext" />
  </EntityType>

  <EntityType Name="Constraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="CheckConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
  </EntityType>

  <EntityType Name="ConstraintColumn">
    <Key>
      <PropertyRef Name="ConstraintId" />
      <PropertyRef Name="ColumnId" />
    </Key>
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ColumnId" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>

  <EntityType Name="ForeignKeyConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="UpdateRule" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="ForeignKey">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="int" />
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="FromColumnId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ToColumnId" Nullable="false" Type="varchar" MaxLength ="256" />
  </EntityType>

  <EntityType Name="ViewConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
    <Property Name="UpdateRule" Nullable="true" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="true" MaxLength="11" Type="varchar" />
  </EntityType>

  <Association Name="TableTableConstraint">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintConstraintColumn">
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintForeignKey">
    <End Type="Self.ForeignKeyConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="TableTableColumn">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.TableColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewColumn">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FunctionFunctionParameter">
    <End Type="Self.Function" Role="Function" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Function">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ProcedureProcedureParameter">
    <End Type="Self.Procedure" Role="Procedure" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Procedure">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewConstraint">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintConstraintColumn">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintForeignKey">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>  
</Schema>��<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="MySqlClient" 
        Provider="MySql.Data.MySqlClient"
        ProviderManifestToken="5"
        Alias="Self" 
        xmlns="http://schemas.microsoft.com/ado/2006/04/edm/ssdl">
  <EntityContainer Name="Schema">
    
    <EntitySet Name="STables" EntityType="Self.Table">
      <DefiningQuery>
		  SELECT /* Tables */
		  CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
		  TABLE_CATALOG AS `Catalog`,
		  TABLE_SCHEMA  AS `Schema`,
		  TABLE_NAME    AS `Name`
		  FROM INFORMATION_SCHEMA.TABLES
		  WHERE TABLE_TYPE = 'BASE TABLE'
      AND TABLE_SCHEMA=schema()
	  </DefiningQuery>
    </EntitySet>
    
    <EntitySet Name="STableColumns" EntityType="Self.TableColumn">
      <DefiningQuery>
        SELECT /* Table columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
        IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
        IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
        CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        CASE WHEN NUMERIC_PRECISION > 0 THEN CAST(NUMERIC_PRECISION AS CHAR)
        WHEN DATETIME_PRECISION > 0 THEN CAST(DATETIME_PRECISION AS CHAR)
        ELSE 0
        END AS `Precision`,
        DATETIME_PRECISION AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsIdentity`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViews" EntityType="Self.View">
      <DefiningQuery>
        SELECT /* Views */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `Id`,
        TABLE_CATALOG AS`CatalogName`,
        TABLE_SCHEMA AS `SchemaName`,
        TABLE_NAME AS `Name`,
        VIEW_DEFINITION AS `ViewDefinition`,
        CASE IS_UPDATABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsUpdatable`
        FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewColumns" EntityType="Self.ViewColumn">
      <DefiningQuery>
        SELECT /* View columns */
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        COLUMN_NAME AS `Name`,
        ORDINAL_POSITION AS `Ordinal`,
        CASE IS_NULLABLE WHEN 'YES' THEN 1 ELSE 0 END AS `IsNullable`,
        IF(LEFT(COLUMN_TYPE,10) = 'tinyint(1)', 'bool',
        IF (LEFT(COLUMN_TYPE,10) = 'binary(16)' OR LEFT(COLUMN_TYPE,8) = 'char(36)', 'guid',
        IF (INSTR(COLUMN_TYPE, 'unsigned') = 0, DATA_TYPE,
        CONCAT('u', DATA_TYPE)))) AS `TypeName`,
        IF (CHARACTER_MAXIMUM_LENGTH > 2147483647, 2147483647, CHARACTER_MAXIMUM_LENGTH) AS `MaxLength`,
        CASE WHEN NUMERIC_PRECISION > 0 THEN CAST(NUMERIC_PRECISION AS UNSIGNED INTEGER)
        WHEN DATETIME_PRECISION > 0 THEN CAST(DATETIME_PRECISION AS UNSIGNED INTEGER)
        ELSE 0
        END AS `Precision`,
        0 AS `DateTimePrecision`,
        NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        CHARACTER_SET_NAME AS `CharacterSetName`,
        0 AS `IsMultiSet`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsIdentity`,
        CASE WHEN COLUMN_DEFAULT LIKE 'CURRENT_TIMESTAMP' THEN 1
        WHEN EXTRA LIKE  '%auto%' THEN 1
        ELSE 0
        END AS `IsStoreGenerated`,
        COLUMN_DEFAULT AS `Default`
        FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctions" EntityType="Self.Function">
      <DefiningQuery>
        SELECT /* Functions */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`,
        SUBSTRING_INDEX(DTD_IDENTIFIER, '(', 1) AS `ReturnTypeName`,
        NULL AS `ReturnMaxLength`,
        NULL AS `ReturnPrecision`,
        0 AS `ReturnDateTimePrecision`,
        NULL AS `ReturnScale`,
        NULL AS `ReturnCollationCatalog`,
        NULL AS `ReturnCollationSchema`,
        NULL AS `ReturnCollationName`,
        NULL AS `ReturnCharacterSetCatalog`,
        NULL AS `ReturnCharacterSetSchema`,
        NULL AS `ReturnCharacterSetName`,
        NULL AS `ReturnIsMultiSet`,
        NULL AS `IsAggregate`,
        NULL AS `IsBuiltIn`,
        NULL AS `IsNiladic`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='FUNCTION'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedures" EntityType="Self.Procedure">
      <DefiningQuery>
        SELECT /* Procedures */
        CONCAT(ROUTINE_SCHEMA, '.', SPECIFIC_NAME) AS `Id`,
        ROUTINE_CATALOG AS `CatalogName`,
        ROUTINE_SCHEMA AS `SchemaName`,
        ROUTINE_NAME AS `Name`
        FROM INFORMATION_SCHEMA.ROUTINES
        WHERE ROUTINE_TYPE='PROCEDURE'
        AND ROUTINE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SFunctionParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'FUNCTION'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SProcedureParameters" EntityType="Self.Parameter">
      <DefiningQuery>
        SELECT
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME, '.', f.PARAMETER_NAME) AS `Id`,
        CONCAT(f.SPECIFIC_SCHEMA, '.', f.SPECIFIC_NAME) AS `ParentId`,
        f.PARAMETER_NAME AS `Name`,
        f.ORDINAL_POSITION `Ordinal`,
        f.DATA_TYPE AS `TypeName`,
        f.CHARACTER_MAXIMUM_LENGTH AS `MaxLength`,
        f.NUMERIC_PRECISION AS`Precision`,
        NULL AS `DateTimePrecision`,
        f.NUMERIC_SCALE AS `Scale`,
        NULL AS `CollationCatalog`,
        NULL AS `CollationSchema`,
        f.COLLATION_NAME AS `CollationName`,
        NULL AS `CharacterSetCatalog`,
        NULL AS `CharacterSetSchema`,
        f.CHARACTER_SET_NAME AS `CharacterSetName`,
        CAST(0 as decimal(0,0)) AS `IsMultiSet`,
        f.PARAMETER_MODE AS `Mode`,
        NULL AS `Default`
        FROM
        INFORMATION_SCHEMA.PARAMETERS f
        INNER JOIN INFORMATION_SCHEMA.ROUTINES r ON
        f.SPECIFIC_SCHEMA = r.ROUTINE_SCHEMA AND
        f.SPECIFIC_NAME = r.SPECIFIC_NAME AND
        r.ROUTINE_TYPE = 'PROCEDURE'
        WHERE
        r.ROUTINE_SCHEMA=schema() AND f.ORDINAL_POSITION > 0
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraints" EntityType="Self.Constraint">
      <DefiningQuery>
        SELECT  /* Constraints */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) AS `ParentId`,
        CONSTRAINT_NAME AS `Name`,
        CONSTRAINT_TYPE AS `ConstraintType`,
        0 AS `IsDeferrable`,
        0 AS `IsInitiallyDeferred`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE != 'CHECK' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SCheckConstraints" EntityType="Self.CheckConstraint">
      <DefiningQuery>
        SELECT  /* Check constraints */
        NULL AS `Id`,
        NULL AS `Expression`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* Constraint columns */
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `ConstraintId`,
        CONCAT(TABLE_SCHEMA, '.', TABLE_NAME, '.', COLUMN_NAME) AS `ColumnId`
        FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE WHERE TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>

<!--
    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT /* Foreign key constraints */
        CONCAT('`', TABLE_SCHEMA, '`.`', CONSTRAINT_NAME, '`') AS `Id`,
        'NO ACTION' AS `UpdateRule`,
        'NO ACTION' AS `DeleteRule`
        FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
        WHERE CONSTRAINT_TYPE = 'FOREIGN KEY' AND TABLE_SCHEMA=schema()
      </DefiningQuery>
    </EntitySet>
-->

    <EntitySet Name="SForeignKeyConstraints" EntityType="Self.ForeignKeyConstraint">
      <DefiningQuery>
        SELECT
        CONCAT(CONSTRAINT_SCHEMA, '.', TABLE_NAME, '.', CONSTRAINT_NAME) AS `Id`,
        UPDATE_RULE AS `UpdateRule`,
        DELETE_RULE AS `DeleteRule`
        FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.CONSTRAINT_NAME, '.', FC.ORDINAL_POSITION) AS `Id`,
        CONCAT(PC.TABLE_SCHEMA, '.', PC.TABLE_NAME, '.', PC.COLUMN_NAME) AS `ToColumnId`,
        CONCAT(FC.TABLE_SCHEMA, '.', FC.TABLE_NAME, '.', FC.COLUMN_NAME) AS `FromColumnId`,
        CONCAT(FC.CONSTRAINT_SCHEMA, '.', FC.TABLE_NAME, '.', FC.CONSTRAINT_NAME) AS `ConstraintId`,
        FC.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS PC /* PRIMARY KEY COLS*/
        ON       RC.UNIQUE_CONSTRAINT_SCHEMA =  PC.CONSTRAINT_SCHEMA
        AND      RC.UNIQUE_CONSTRAINT_NAME    = PC.CONSTRAINT_NAME
        AND      RC.REFERENCED_TABLE_NAME     = PC.TABLE_NAME
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS FC /* FOREIGN KEY COLS*/
        ON       RC.CONSTRAINT_SCHEMA  = FC.CONSTRAINT_SCHEMA
        AND      RC.CONSTRAINT_NAME    = FC.CONSTRAINT_NAME
        AND      RC.TABLE_NAME         = FC.TABLE_NAME
        AND      PC.ORDINAL_POSITION   = FC.ORDINAL_POSITION
<!--        WHERE FC.CONSTRAINT_SCHEMA='test3'-->
      </DefiningQuery>
    </EntitySet>    
    
    <!--<EntitySet Name="SForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT  /* Foreign keys */
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`',
               KEYCOLS.CONSTRAINT_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `Id`,
        CONCAT('`', KEYCOLS.REFERENCED_TABLE_SCHEMA, '`.`', 
               KEYCOLS.REFERENCED_TABLE_NAME, '`.`', 
               KEYCOLS.REFERENCED_COLUMN_NAME, '`') AS `ToColumnId`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.TABLE_NAME, '`.`', KEYCOLS.COLUMN_NAME, '`') AS `FromColumnId`,
        KEYCOLS.COLUMN_NAME AS `Name`,
        CONCAT('`', KEYCOLS.TABLE_SCHEMA, '`.`', KEYCOLS.CONSTRAINT_NAME, '`') AS `ConstraintId`,
        KEYCOLS.ORDINAL_POSITION AS `Ordinal`
        FROM
        INFORMATION_SCHEMA.TABLE_CONSTRAINTS TC
        INNER JOIN
        INFORMATION_SCHEMA.KEY_COLUMN_USAGE KEYCOLS
        WHERE TC.CONSTRAINT_TYPE = 'FOREIGN KEY'
        AND TC.TABLE_SCHEMA = KEYCOLS.TABLE_SCHEMA
        AND TC.TABLE_NAME = KEYCOLS.TABLE_NAME
        AND TC.CONSTRAINT_NAME = KEYCOLS.CONSTRAINT_NAME
        AND TC.TABLE_SCHEMA = schema()
      </DefiningQuery>
    </EntitySet>-->

    <EntitySet Name="SViewConstraints" EntityType="Self.ViewConstraint">
      <DefiningQuery>
        SELECT /* View constraints */
        NULL AS `Id`,
        NULL AS `ParentId`,
        NULL AS `Name`,
        NULL AS `ConstraintType`,
        NULL AS `Expression`,
        NULL AS `UpdateRule`,
        NULL AS `DeleteRule`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewConstraintColumns" EntityType="Self.ConstraintColumn">
      <DefiningQuery>
        SELECT  /* View constraint columns */
        NULL AS `ConstraintId`,
        NULL AS `ColumnId`
      </DefiningQuery>
    </EntitySet>

    <EntitySet Name="SViewForeignKeys" EntityType="Self.ForeignKey">
      <DefiningQuery>
        SELECT /* View foreign keys */
        NULL AS `Id`,
        NULL AS `ToColumnId`,
        NULL AS `FromColumnId`,
        NULL AS `ConstraintId`,
        0 AS `Ordinal`
      </DefiningQuery>
    </EntitySet>

    <AssociationSet Name="STableTableColumns" Association="Self.TableTableColumn" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="STableConstraints" Association="Self.TableTableConstraint" >
      <End Role="Parent" EntitySet="STables"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintConstraintColumns" Association="Self.ConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SConstraintColumns"/>
      <End Role="Constraint" EntitySet="SConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SConstraintForeignKeys" Association="Self.ConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Constraint" EntitySet="SForeignKeyConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyColumns" Association="Self.FromForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyColumns" Association="Self.ToForeignKeyColumn" >
      <End Role="ForeignKey" EntitySet="SForeignKeys"/>
      <End Role="Column" EntitySet="STableColumns"/>
    </AssociationSet>

    <AssociationSet Name="SViewViewColumns" Association="Self.ViewViewColumn" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SViewViewConstraints" Association="Self.ViewViewConstraint" >
      <End Role="Parent" EntitySet="SViews"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintConstraintColumns" Association="Self.ViewConstraintConstraintColumn" >
      <End Role="ConstraintColumn" EntitySet="SViewConstraintColumns"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SViewConstraintForeignKeys" Association="Self.ViewConstraintForeignKey" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Constraint" EntitySet="SViewConstraints"/>
    </AssociationSet>
    <AssociationSet Name="SFromForeignKeyViewColumns" Association="Self.FromForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>
    <AssociationSet Name="SToForeignKeyViewColumns" Association="Self.ToForeignKeyViewColumn" >
      <End Role="ForeignKey" EntitySet="SViewForeignKeys"/>
      <End Role="Column" EntitySet="SViewColumns"/>
    </AssociationSet>

    <AssociationSet Name="FunctionFunctionParameters" Association="Self.FunctionFunctionParameter">
      <End Role="Function" EntitySet="SFunctions"/>
      <End Role="Parameter" EntitySet="SFunctionParameters"/>
    </AssociationSet>
    <AssociationSet Name="ProcedureProcedureParameters" Association="Self.ProcedureProcedureParameter" >
      <End Role="Procedure" EntitySet="SProcedures"/>
      <End Role="Parameter" EntitySet="SProcedureParameters"/>
    </AssociationSet>
  </EntityContainer>

  <EntityType Name="Table">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Catalog" Type="varchar" MaxLength="256" />
    <Property Name="Schema" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>



  <EntityType Name="TableColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength ="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="View">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="CatalogName" Type="varchar" MaxLength="256" />
    <Property Name="SchemaName" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ViewDefinition" Nullable="true" Type="text" />
    <Property Name="IsUpdatable" Nullable="false" Type="bit" />
  </EntityType>

  <EntityType Name="ViewColumn">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="bigint" />
    <Property Name="IsNullable" Nullable="false" Type="bit" />
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Type="bigint" />
    <Property Name="Precision" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsIdentity" Nullable="false" Type="bit" />
    <Property Name="IsStoreGenerated" Nullable="false" Type="bit" />
    <Property Name="Default" Nullable="true" Type="longtext"/>
  </EntityType>

  <EntityType Name="Function">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ReturnTypeName" Type="varchar" MaxLength="256" />
    <Property Name="ReturnMaxLength" Type="bigint" />
    <Property Name="ReturnPrecision" Type="bigint" />
    <Property Name="ReturnDateTimePrecision" Type="int" />
    <Property Name="ReturnScale" Type="bigint" />
    <Property Name="ReturnCollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCollationName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="ReturnCharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="ReturnIsMultiSet" Nullable="false" Type="bit" />
    <Property Name="IsAggregate" Type="bit" />
    <Property Name="IsBuiltIn" Type="bit" />
    <Property Name="IsNiladic" Type="bit" />
  </EntityType>

  <EntityType Name="Procedure">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="CatalogName" Type="varchar" MaxLength="256"/>
    <Property Name="SchemaName" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256"/>
  </EntityType>

  <EntityType Name="Parameter">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Ordinal" Nullable="false" Type="int"/>
    <Property Name="TypeName" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="MaxLength" Nullable="true" Type="bigint" />
    <Property Name="Precision" Nullable="true" Type="bigint" />
    <Property Name="DateTimePrecision" Type="int" />
    <Property Name="Scale" Nullable="true" Type="bigint" />
    <Property Name="CollationCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CollationSchema" Type="varchar" MaxLength="128" />
    <Property Name="CollationName" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetCatalog" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetSchema" Type="varchar" MaxLength="128" />
    <Property Name="CharacterSetName" Type="varchar" MaxLength="128" />
    <Property Name="IsMultiSet" Nullable="false" Type="bit" />
    <Property Name="Mode" Type="varchar" MaxLength="16" />
    <Property Name="Default" Type="longtext" />
  </EntityType>

  <EntityType Name="Constraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="CheckConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength ="256" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
  </EntityType>

  <EntityType Name="ConstraintColumn">
    <Key>
      <PropertyRef Name="ConstraintId" />
      <PropertyRef Name="ColumnId" />
    </Key>
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ColumnId" Nullable="false" Type="varchar" MaxLength="256" />
  </EntityType>

  <EntityType Name="ForeignKeyConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="UpdateRule" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="false" MaxLength="11" Type="varchar" />
  </EntityType>

  <EntityType Name="ForeignKey">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256"/>
    <Property Name="Ordinal" Nullable="false" Type="int" />
    <Property Name="ConstraintId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="FromColumnId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ToColumnId" Nullable="false" Type="varchar" MaxLength ="256" />
  </EntityType>

  <EntityType Name="ViewConstraint">
    <Key>
      <PropertyRef Name="Id" />
    </Key>
    <Property Name="Id" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="ParentId" Nullable="false" Type="varchar" MaxLength="256" />
    <Property Name="Name" Nullable="false" MaxLength="256" Type="varchar" />
    <Property Name="IsDeferrable" Nullable="false" Type="bit" />
    <Property Name="IsInitiallyDeferred" Nullable="false" Type="bit" />
    <Property Name="ConstraintType" Nullable="false" MaxLength="11" Type="varchar" />
    <Property Name="Expression" Nullable="true" MaxLength="4000" Type="varchar" />
    <Property Name="UpdateRule" Nullable="true" MaxLength="11" Type="varchar" />
    <Property Name="DeleteRule" Nullable="true" MaxLength="11" Type="varchar" />
  </EntityType>

  <Association Name="TableTableConstraint">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintConstraintColumn">
    <End Type="Self.Constraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ConstraintForeignKey">
    <End Type="Self.ForeignKeyConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyColumn">
    <End Type="Self.TableColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="TableTableColumn">
    <End Type="Self.Table" Role="Parent" Multiplicity="1" />
    <End Type="Self.TableColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewColumn">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Column">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FunctionFunctionParameter">
    <End Type="Self.Function" Role="Function" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Function">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ProcedureProcedureParameter">
    <End Type="Self.Procedure" Role="Procedure" Multiplicity="1" />
    <End Type="Self.Parameter" Role="Parameter" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Procedure">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Parameter">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewViewConstraint">
    <End Type="Self.View" Role="Parent" Multiplicity="1" />
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Parent">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="Constraint">
        <PropertyRef Name="ParentId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintConstraintColumn">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ConstraintColumn" Role="ConstraintColumn" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ConstraintColumn">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ViewConstraintForeignKey">
    <End Type="Self.ViewConstraint" Role="Constraint" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Constraint">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ConstraintId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="FromForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="FromColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>

  <Association Name="ToForeignKeyViewColumn">
    <End Type="Self.ViewColumn" Role="Column" Multiplicity="1" />
    <End Type="Self.ForeignKey" Role="ForeignKey" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Column">
        <PropertyRef Name="Id" />
      </Principal>
      <Dependent Role="ForeignKey">
        <PropertyRef Name="ToColumnId" />
      </Dependent>
    </ReferentialConstraint>
  </Association>  
</Schema>��<?xml version="1.0" encoding="utf-8"?>
<!-- 
####################################################################################################################

BE AWARE THAT THE ORDER IN WHICH TYPES ARE DESCRIBED IN THE PROVIDER MANIFEST IS RELEVANT AND HAVE IMPACT IN LOOKUP
PROCESS

#################################################################################################################### 
-->
<ProviderManifest Namespace="MySql" xmlns="http://schemas.microsoft.com/ado/2006/04/edm/providermanifest">
  <Types>
    <Type Name ="guid" PrimitiveTypeKind ="Guid"/>
    <Type Name="bool" PrimitiveTypeKind="Boolean"/>
    <!-- signed types -->
    <Type Name="tinyint" PrimitiveTypeKind="SByte"/>
    <Type Name="smallint" PrimitiveTypeKind="Int16"/>
    <Type Name="mediumint" PrimitiveTypeKind="Int32"/>
    <Type Name="int" PrimitiveTypeKind ="Int32"/>
    <Type Name="bigint" PrimitiveTypeKind="Int64"/>
    <!-- unsigned types are mapped to signed value big enough to hold it 
         since EF doesn't support unsigned types directly -->
    <Type Name="utinyint" PrimitiveTypeKind="Byte"/>
    <Type Name="usmallint" PrimitiveTypeKind="Int32"/>
    <Type Name="umediumint" PrimitiveTypeKind="Int32"/>
    <Type Name="uint" PrimitiveTypeKind ="Int64"/>
    <Type Name="ubigint" PrimitiveTypeKind="Decimal">
      <FacetDescriptions>
        <Precision Minimum="20" Maximum="20" DefaultValue="20" Constant="true" />
        <Scale Minimum="0" Maximum="0" DefaultValue="0" Constant="true" />
      </FacetDescriptions>
    </Type>
    
    <Type Name="year" PrimitiveTypeKind="Int16"/>
    <Type Name="float" PrimitiveTypeKind="Single"/>
    <Type Name="double" PrimitiveTypeKind="Double"/>
    <Type Name="decimal" PrimitiveTypeKind="Decimal">
      <FacetDescriptions>
        <Precision Minimum="1" Maximum="65" DefaultValue="10" Constant="false" />
        <Scale Minimum="0" Maximum="30" DefaultValue="0" Constant="false" />
      </FacetDescriptions>
    </Type>
    <Type Name="timestamp" PrimitiveTypeKind="DateTime">
      <FacetDescriptions>
        <Precision Minimum="0" Maximum="6" DefaultValue="0" Constant="false" />
      </FacetDescriptions>
    </Type>
    <Type Name="date" PrimitiveTypeKind="DateTime">
      <FacetDescriptions>
        <Precision DefaultValue="0" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="time" PrimitiveTypeKind="Time">
      <FacetDescriptions>
        <MaxLength DefaultValue="8" Constant="true" />
        <FixedLength DefaultValue="true" Constant="true" />
        <Precision  Minimum="0" Maximum="6" DefaultValue="0" Constant="false" />
      </FacetDescriptions>
    </Type>
    <Type Name="datetime" PrimitiveTypeKind="DateTime">
      <FacetDescriptions>
        <Precision Minimum="0" Maximum="6" DefaultValue="0" Constant="false" />
      </FacetDescriptions>
    </Type>
    <Type Name="nvarchar" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="65535" DefaultValue="1000" Constant="false" />
        <Unicode DefaultValue="true" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="varchar" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="65535" DefaultValue="1000" Constant="false" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="char" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="255" DefaultValue="255" Constant="false" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="true" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="nchar" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="255" DefaultValue="255" Constant="false" />
        <Unicode DefaultValue="true" Constant="true" />
        <FixedLength DefaultValue="true" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="binary" PrimitiveTypeKind="Binary">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="255" Constant="false" />
        <FixedLength DefaultValue="true" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="varbinary" PrimitiveTypeKind="Binary">
      <FacetDescriptions>
        <MaxLength Minimum="1" Maximum="65535" DefaultValue="100" Constant="false" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="bit" PrimitiveTypeKind="Boolean"/>
    <Type Name="tinyblob" PrimitiveTypeKind="Binary" >
      <FacetDescriptions>
        <MaxLength DefaultValue="255" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="blob" PrimitiveTypeKind="Binary" >
      <FacetDescriptions>
        <MaxLength DefaultValue="65535" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="mediumblob" PrimitiveTypeKind="Binary" >
      <FacetDescriptions>
        <MaxLength DefaultValue="16777215" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="longblob" PrimitiveTypeKind="Binary" >
      <FacetDescriptions>
        <MaxLength DefaultValue="2147483647" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="tinytext" PrimitiveTypeKind="String" >
      <FacetDescriptions>
        <MaxLength DefaultValue="255" Constant="true" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="text" PrimitiveTypeKind="String" >
      <FacetDescriptions>
        <MaxLength DefaultValue="65535" Constant="true" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="mediumtext" PrimitiveTypeKind="String" >
      <FacetDescriptions>
        <MaxLength DefaultValue="16777215" Constant="true" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <!--    <Type Name="longtext" PrimitiveTypeKind="String" >
      <FacetDescriptions>
        <MaxLength Default="2147483647" Constant="true" />
        <Unicode Default="false" Constant="true" />
        <FixedLength Default="false" Constant="true" />
      </FacetDescriptions>
    </Type>-->

    <Type Name="longtext" PrimitiveTypeKind="String" >
      <FacetDescriptions>
        <MaxLength DefaultValue="1073741823" Constant="true" />
        <Unicode DefaultValue="false" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="set" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength DefaultValue="65531" Constant="true" />
        <Unicode DefaultValue="true" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>
    <Type Name="enum" PrimitiveTypeKind="String">
      <FacetDescriptions>
        <MaxLength DefaultValue="65532" Constant="true" />
        <Unicode DefaultValue="true" Constant="true" />
        <FixedLength DefaultValue="false" Constant="true" />
      </FacetDescriptions>
    </Type>


  </Types>
  <Functions>
    <!-- ### AGGREGAfTES ### -->
    
    <!-- AVG -->
    <Function Name="AVG" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="arg" Type="Collection(Int32)" Mode="In" />
    </Function>
    <Function Name="AVG" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int64)" Mode="In" />
    </Function>
    <Function Name="AVG" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Decimal" />
      <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" />
    </Function>
    <Function Name="AVG" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>

    <!-- COUNT -->
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Byte)" Mode="In"/>
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int16)" Mode="In"/>
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int32)" Mode="In"/>
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int64)" Mode="In"/>
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" />
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" />
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(String)" Mode="In" />
    </Function>
    <Function Name="COUNT" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Binary)" Mode="In" />
    </Function>

    <!-- MAX -->
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Byte" />
      <Parameter Name="arg" Type="Collection(Byte)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int16" />
      <Parameter Name="arg" Type="Collection(Int16)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="arg" Type="Collection(Int32)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int64)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Decimal" />
      <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Single" />
      <Parameter Name="arg" Type="Collection(Single)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="arg" Type="Collection(String)" Mode="In" />
    </Function>
    <Function Name="MAX" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Binary" />
      <Parameter Name="arg" Type="Collection(Binary)" Mode="In" />
    </Function>

    <!-- MIN -->
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Byte" />
      <Parameter Name="arg" Type="Collection(Byte)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int16" />
      <Parameter Name="arg" Type="Collection(Int16)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="arg" Type="Collection(Int32)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int64)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Decimal" />
      <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Single" />
      <Parameter Name="arg" Type="Collection(Single)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="arg" Type="Collection(DateTime)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="arg" Type="Collection(String)" Mode="In" />
    </Function>
    <Function Name="MIN" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Binary" />
      <Parameter Name="arg" Type="Collection(Binary)" Mode="In" />
    </Function>

    <!-- SUM -->
    <Function Name="SUM" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="arg" Type="Collection(Int32)" Mode="In" />
    </Function>
    <Function Name="SUM" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="arg" Type="Collection(Int64)" Mode="In" />
    </Function>
    <Function Name="SUM" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Decimal" />
      <Parameter Name="arg" Type="Collection(Decimal)" Mode="In" />
    </Function>
    <Function Name="SUM" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>

    <!-- STDEV AGGREGATES -->
    <Function Name="STDDEV" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In" />
    </Function>

    <!-- 5.0.3 -->
    <Function Name="STDDEV_SAMP" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In"/>
    </Function>

    <Function Name="STDDEV_POP" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In"/>
    </Function>

    <Function Name="VAR_SAMP" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In"/>
    </Function>

    <Function Name="VAR_POP" Aggregate="true" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="arg" Type="Collection(Double)" Mode="In"/>
    </Function>
    <!-- end 5.0.3 -->

    <!-- ### BIT FUNCTIONS ### -->

    <!-- Bit_Count -->
    <Function Name="BIT_COUNT" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="n" Type="Int64" Mode="In"/>
    </Function>

    <!-- ### STRING FUNCTIONS ### -->
    
    <!-- Ascii -->
    <Function Name="ASCII" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="arg" Type="String" Mode="In" />
    </Function>

    <Function Name="BIN" BuiltIn="true">
      <ReturnType Type="String"/>
      <Parameter Name="arg" Type="Int64" Mode="In"/>
    </Function>

    <Function Name="BIT_LENGTH" BuiltIn="true">
      <ReturnType Type="Int64"/>
      <Parameter Name="arg" Type="String" Mode="In"/>
    </Function>

    <Function Name="CHAR_LENGTH" BuiltIn="true">
      <ReturnType Type="Int64"/>
      <Parameter Name="arg" Type="String" Mode="In"/>
    </Function>

    <Function Name="CHARACTER_LENGTH" BuiltIn="true">
      <ReturnType Type="Int64"/>
      <Parameter Name="arg" Type="String" Mode="In"/>
    </Function>

    <Function Name="CONCAT" BuiltIn="true">
      <ReturnType Type="String"/>
      <Parameter Name="arg0" Type="String" Mode="In"/>
      <Parameter Name="arg1" Type="String" Mode="In"/>
    </Function>

    <Function Name="CONV" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="N" Type="String" Mode="In"/>
      <Parameter Name="from_base" Type="Int32" Mode="In"/>
      <Parameter Name="to_base" Type="Int32" Mode="In"/>
    </Function>

    <!-- todo check longer versions of concat -->
    <!-- todo implement concat_ws -->
    <!-- todo implement elt -->
    <!-- todo implement export_set -->
    <!-- todo implement field -->

    <Function Name="FIND_IN_SET" BuiltIn="true">
      <ReturnType Type="Int64"/>
      <Parameter Name="str_to_find" Type="String" Mode="In"/>
      <Parameter Name="string_list" Type="String" Mode="In"/>
    </Function>

    <Function Name="FORMAT" BuiltIn="true">
      <ReturnType Type="String"/>
      <Parameter Name="value" Type="Double" Mode="In"/>
      <Parameter Name="dec_places" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="HEX" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="n_or_s" Type="String" Mode="In"/>
    </Function>

    <Function Name="INSERT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="original_string" Type="String" Mode="In"/>
      <Parameter Name="position" Type="Int64" Mode="In"/>
      <Parameter Name="length" Type="Int64" Mode="In"/>
      <Parameter Name="new_string" Type="String" Mode="In"/>
    </Function>

    <Function Name="INSTR" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="substr" Type="String" Mode="In"/>
    </Function>

    <Function Name="LEFT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="len" Type="Int64" Mode="In"/>
    </Function>

    <Function Name="LENGTH" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="LOAD_FILE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="file_name" Type="String" Mode="In"/>
    </Function>

    <Function Name="LOCATE" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="substr" Type="String" Mode="In"/>
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="LOCATE" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="substr" Type="String" Mode="In"/>
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="LOWER" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- LCASE is a synonym for LOWER -->
    <Function Name="LCASE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="LPAD" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
      <Parameter Name="padstr" Type="String" Mode="In"/>
    </Function>

    <Function Name="LTRIM" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- implement MAKE_SET -->

    <Function Name="MID" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="OCT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="N" Type="Int64" Mode="In"/>
    </Function>

    <Function Name="OCTET_LENGTH" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="ORD" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="QUOTE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="REPEAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="count" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="REPLACE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="from_str" Type="String" Mode="In"/>
      <Parameter Name="to_str" Type="String" Mode="In"/>
    </Function>

    <Function Name="REVERSE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="RIGHT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="RPAD" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
      <Parameter Name="padstr" Type="String" Mode="In"/>
    </Function>

    <Function Name="RTRIM" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="SOUNDEX" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="SPACE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="N" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBSTR" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBSTR" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBSTRING" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBSTRING" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pos" Type="Int32" Mode="In"/>
      <Parameter Name="len" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBSTRING_INDEX" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="delim" Type="String" Mode="In"/>
      <Parameter Name="count" Type="Int32" Mode="In"/>
    </Function>

    <!-- implement TRIM -->

    <Function Name="UCASE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="UNHEX" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="UPPER" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- ### MATH FUNCTIONS ### -->

    <!-- Abs -->
    <Function Name="ABS" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="x" Type="Int64" Mode="In"/>
    </Function>

    <!-- Acos -->
    <Function Name="ACOS" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Asin -->
    <Function Name="ASIN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Atan -->
    <Function Name="ATAN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <Function Name="ATAN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="y" Type="Double" Mode="In"/>
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Atan2 -->
    <Function Name="ATAN2" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="y" Type="Double" Mode="In"/>
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>
    
    <!-- Ceil -->
    <Function Name="CEIL" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Ceiling -->
    <Function Name="CEILING" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Cos -->
    <Function Name="COS" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Cot -->
    <Function Name="COT" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Crc32 -->
    <Function Name="CRC32" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <!-- Degrees -->
    <Function Name="DEGREES" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Exp -->
    <Function Name="EXP" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Floor -->
    <Function Name="FLOOR" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>
    
    <!-- Ln -->
    <Function Name="LN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Log-->
    <Function Name="LOG" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <Function Name="LOG" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="b" Type="Double" Mode="In"/>
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Log2 -->
    <Function Name="LOG2" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Log10 -->
    <Function Name="LOG10" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Mod -->
    <Function Name="MOD" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="n" Type="Double" Mode="In"/>
      <Parameter Name="m" Type="Double" Mode="In"/>
    </Function>

    <!-- pi -->
    <Function Name="PI" BuiltIn="true">
      <ReturnType Type="Double" />
    </Function>

    <!-- Pow -->
    <Function Name="POW" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
      <Parameter Name="y" Type="Double" Mode="In"/>
    </Function>

    <!-- Power -->
    <Function Name="POWER" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
      <Parameter Name="y" Type="Double" Mode="In"/>
    </Function>

    <!-- Radians -->
    <Function Name="RADIANS" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Rand -->
    <Function Name="RAND" BuiltIn="true">
      <ReturnType Type="Double" />
    </Function>

    <Function Name="RAND" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="n" Type="Double" Mode="In"/>
    </Function>

    <!-- Round -->
    <Function Name="ROUND" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <Function Name="ROUND" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
      <Parameter Name="d" Type="Int32" Mode="In"/>
    </Function>

    <!-- Sign -->
    <Function Name="SIGN" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Sin -->
    <Function Name="SIN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Sqrt -->
    <Function Name="SQRT" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Tan -->
    <Function Name="TAN" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
    </Function>

    <!-- Truncate -->
    <Function Name="TRUNCATE" BuiltIn="true">
      <ReturnType Type="Double" />
      <Parameter Name="x" Type="Double" Mode="In"/>
      <Parameter Name="d" Type="Int32" Mode="In"/>
    </Function>

    <!-- ### DATE FUNCTIONS ### -->

    <!-- AddDate -->
    <Function Name="ADDDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
      <Parameter Name="days" Type="Int32" Mode="In"/>
    </Function>
    
    <Function Name="ADDDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="String" Mode="In"/>
      <Parameter Name="days" Type="Int32" Mode="In"/>
    </Function>

    <!-- AddTime -->
    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="Time" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>
    
    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="Time" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="ADDTIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <!-- Convert_Tz -->
    <Function Name="CONVERT_TZ" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="dt" Type="String" Mode="In"/>
      <Parameter Name="from_tz" Type="String" Mode="In"/>
      <Parameter Name="to_tz" Type="String" Mode="In"/>
    </Function>

    <Function Name="CONVERT_TZ" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="dt" Type="DateTime" Mode="In"/>
      <Parameter Name="from_tz" Type="String" Mode="In"/>
      <Parameter Name="to_tz" Type="String" Mode="In"/>
    </Function>

    <!-- CurDate -->
    <Function Name="CURDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>
    <Function Name="CURRENT_DATE" BuiltIn="true">
      <ReturnType Type="DateTime"/>
    </Function>

    <!-- CurTime -->
    <Function Name="CURTIME" BuiltIn="true">
      <ReturnType Type="Time" />
    </Function>
    <Function Name="CURRENT_TIME" BuiltIn="true">
      <ReturnType Type="Time" />
    </Function>

    <!-- Current_TimeStamp -->
    <Function Name="CURRENT_TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!--Date -->
    <Function Name="DATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <Function Name="DATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
    </Function>

    <!-- DateDiff -->
    <Function Name="DATEDIFF" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DATEDIFF" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="DATEDIFF" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="DATEDIFF" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="DateTime" Mode="In"/>
    </Function>

    <!-- Date_Add (todo) -->
    
    <!-- Date_Format -->
    <Function Name="DATE_FORMAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <Function Name="DATE_FORMAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="String" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <!-- Day -->
    <Function Name="DAY" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DAY" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- DayName -->
    <Function Name="DAYNAME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DAYNAME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- DayOfMonth -->
    <Function Name="DAYOFMONTH" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DAYOFMONTH" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- DayOfWeek-->
    <Function Name="DAYOFWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DAYOFWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- DayOfYear-->
    <Function Name="DAYOFYEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="DAYOFYEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- Extract (todo) -->
    
    <!-- From_Days -->
    <Function Name="FROM_DAYS" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="n" Type="Int32" Mode="In"/>
    </Function>

    <!-- From_UnixTime -->
    <Function Name="FROM_UNIXTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="unix_timestamp" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="FROM_UNIXTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="unix_timestamp" Type="Int32" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <!-- Get_Format (todo) -->
    
    <!-- Hour -->
    <Function Name="HOUR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="time" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="HOUR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="time" Type="String" Mode="In"/>
    </Function>

    <!-- Last_Day -->
    <Function Name="LAST_DAY" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="LAST_DAY" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- LocalTime -->
    <Function Name="LOCALTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!-- LocalTimeStamp -->
    <Function Name="LOCALTIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!-- MakeDate -->
    <Function Name="MAKEDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="year" Type="Int32" Mode="In"/>
      <Parameter Name="dayOfYear" Type="Int32" Mode="In"/>
    </Function>

    <!-- MakeTime -->
    <Function Name="MAKETIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="hour" Type="Int32" Mode="In"/>
      <Parameter Name="minute" Type="Int32" Mode="In"/>
      <Parameter Name="second" Type="Int32" Mode="In"/>
    </Function>

    <!-- MicroSecond -->
    <Function Name="MICROSECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="MICROSECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="expr" Type="Time" Mode="In"/>
    </Function>
    
    <Function Name="MICROSECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <!-- Minute -->
    <Function Name="MINUTE" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="DateTime" Mode="In"/>
    </Function>
    
    <Function Name="MINUTE" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="Time" Mode="In"/>
    </Function>

    <Function Name="MINUTE" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="String" Mode="In"/>
    </Function>

    <!-- Month -->
    <Function Name="MONTH" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="MONTH" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- MonthName -->
    <Function Name="MONTHNAME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="MONTHNAME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- Now -->
    <Function Name="NOW" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>
    
    <!-- Period_Add -->
    <Function Name="PERIOD_ADD" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="p" Type="Int32" Mode="In"/>
      <Parameter Name="n" Type="Int32" Mode="In"/>
    </Function>

    <!-- Period_Diff -->
    <Function Name="PERIOD_DIFF" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="p1" Type="Int32" Mode="In"/>
      <Parameter Name="p2" Type="Int32" Mode="In"/>
    </Function>

    <!-- Quarter -->
    <Function Name="QUARTER" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="QUARTER" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- Second -->
    <Function Name="SECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="SECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="Time" Mode="In"/>
    </Function>

    <Function Name="SECOND" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="time" Type="String" Mode="In"/>
    </Function>

    <!-- Sec_To_Time -->
    <Function Name="SEC_TO_TIME" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="seconds" Type="Int32" Mode="In"/>
    </Function>

    <!-- Str_To_Date -->
    <Function Name="STR_TO_DATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <!-- SubDate -->
    <Function Name="SUBDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
      <Parameter Name="days" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="SUBDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="String" Mode="In"/>
      <Parameter Name="days" Type="Int32" Mode="In"/>
    </Function>

    <!-- SubTime -->
    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="Time" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="Time" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="SUBTIME" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <!-- SysDate -->
    <Function Name="SYSDATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!-- Time -->
    <Function Name="TIME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="TIME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="expr" Type="Time" Mode="In"/>
    </Function>

    <Function Name="TIME" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <!-- TimeDiff -->
    <Function Name="TIMEDIFF" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="TIMEDIFF" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="Time" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="TIMEDIFF" BuiltIn="true">
      <ReturnType Type="Time" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <!-- TimeStamp -->
    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="DateTime" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="Time" Mode="In"/>
    </Function>

    <Function Name="TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
      <Parameter Name="expr1" Type="String" Mode="In"/>
      <Parameter Name="expr2" Type="String" Mode="In"/>
    </Function>

    <!-- TimeStampAdd (todo) -->
    <!-- TimeStampDiff (todo) -->

    <!-- Time_Format -->
    <Function Name="TIME_FORMAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="time" Type="DateTime" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <Function Name="TIME_FORMAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="time" Type="Time" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <Function Name="TIME_FORMAT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="time" Type="String" Mode="In"/>
      <Parameter Name="format" Type="String" Mode="In"/>
    </Function>

    <!-- Time_To_Sec -->
    <Function Name="TIME_TO_SEC" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="time" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="TIME_TO_SEC" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="time" Type="Time" Mode="In"/>
    </Function>
    
    <Function Name="TIME_TO_SEC" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="time" Type="String" Mode="In"/>
    </Function>

    <!-- To_Days -->
    <Function Name="TO_DAYS" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="TO_DAYS" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <Function Name="TO_DAYS" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="Int32" Mode="In"/>
    </Function>

    <!-- Unix_TimeStamp -->
    <Function Name="UNIX_TIMESTAMP" BuiltIn="true">
      <ReturnType Type="Int64" />
    </Function>

    <Function Name="UNIX_TIMESTAMP" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="UNIX_TIMESTAMP" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- Utc_Date -->
    <Function Name="UTC_DATE" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!-- Utc_Time -->
    <Function Name="UTC_TIME" BuiltIn="true">
      <ReturnType Type="Time" />
    </Function>

    <!-- Utc_TimeStamp -->
    <Function Name="UTC_TIMESTAMP" BuiltIn="true">
      <ReturnType Type="DateTime" />
    </Function>

    <!-- Week -->
    <Function Name="WEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="WEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <Function Name="WEEK" BuiltIn="true">
      <ReturnType Type="Int32"/>
      <Parameter Name="date" Type="DateTime" Mode="In"/>
      <Parameter Name="mode" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="WEEK" BuiltIn="true">
      <ReturnType Type="Int32"/>
      <Parameter Name="date" Type="String" Mode="In"/>
      <Parameter Name="mode" Type="Int32" Mode="In"/>
    </Function>

    <!-- WeekDay -->
    <Function Name="WEEKDAY" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="WEEKDAY" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- WeekOfYear-->
    <Function Name="WEEKOFYEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="WEEKOFYEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- Year -->
    <Function Name="YEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="YEAR" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <!-- YearWeek -->
    <Function Name="YEARWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
    </Function>

    <Function Name="YEARWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
    </Function>

    <Function Name="YEARWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="DateTime" Mode="In"/>
      <Parameter Name="mode" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="YEARWEEK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="date" Type="String" Mode="In"/>
      <Parameter Name="mode" Type="Int32" Mode="In"/>
    </Function>

    <!-- ### ENCRYPTION AND COMPRESSION FUNCTIONS ### -->

    <!-- Aes_Decrypt -->
    <Function Name="AES_DECRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="crypt_str" Type="String" Mode="In"/>
      <Parameter Name="key_str" Type="String" Mode="In"/>
    </Function>

    <!-- Aes_Encrypt -->
    <Function Name="AES_ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="key_str" Type="String" Mode="In"/>
    </Function>

    <!-- Compress -->
    <Function Name="COMPRESS" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="string_to_compress" Type="String" Mode="In"/>
    </Function>

    <!-- Decode -->
    <Function Name="DECODE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="crypt_str" Type="String" Mode="In"/>
      <Parameter Name="pass_str" Type="String" Mode="In"/>
    </Function>

    <!-- Encode -->
    <Function Name="ENCODE" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="pass_str" Type="String" Mode="In"/>
    </Function>

    <!-- Des_Decrypt -->
    <Function Name="DES_DECRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="crypt_str" Type="String" Mode="In"/>
    </Function>

    <Function Name="DES_DECRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="crypt_str" Type="String" Mode="In"/>
      <Parameter Name="key_str" Type="String" Mode="In"/>
    </Function>

    <!-- Des_Encrypt -->
    <Function Name="DES_ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="DES_ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="key_num" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="DES_ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="key_str" Type="String" Mode="In"/>
    </Function>

    <!-- Encrypt -->
    <Function Name="ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <Function Name="ENCRYPT" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="salt" Type="String" Mode="In"/>
    </Function>

    <!-- Md5 -->
    <Function Name="MD5" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Old_Password -->
    <Function Name="OLD_PASSWORD" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Password -->
    <Function Name="PASSWORD" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Sha -->
    <Function Name="SHA" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Sha1 -->
    <Function Name="SHA1" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Uncompress -->
    <Function Name="UNCOMPRESS" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Uncompressed_Length -->
    <Function Name="UNCOMPRESSED_LENGTH" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- ### INFORMATION FUNCTIONS ### -->

    <!-- Benchmark (todo) -->

    <!-- CharSet -->
    <Function Name="charset" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Coercibility -->
    <Function Name="COERCIBILITY" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Collation -->
    <Function Name="COLLATION" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Connection_Id -->
    <Function Name="CONNECTION_ID" BuiltIn="true">
      <ReturnType Type="Int32" />
    </Function>

    <!-- Current_User -->
    <Function Name="CURRENT_USER" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Database -->
    <Function Name="DATABASE" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Found_Rows -->
    <Function Name="FOUND_ROWS" BuiltIn="true">
      <ReturnType Type="Int32" />
    </Function>

    <!-- Last_Insert_id -->
    <Function Name="LAST_INSERT_ID" BuiltIn="true">
      <ReturnType Type="Int64" />
    </Function>

    <!-- Row_Count -->
    <Function Name="ROW_COUNT" BuiltIn="true">
      <ReturnType Type="Int64" />
    </Function>

    <!-- User -->
    <Function Name="USER" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Session_User -->
    <Function Name="SESSION_USER" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- System_user -->
    <Function Name="SYSTEM_USER" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Schema -->
    <Function Name="SCHEMA" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Version -->
    <Function Name="VERSION" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- ### OTHER FUNCTIONS ### -->

    <!-- Default (??) -->

    <!-- Get_Lock-->
    <Function Name="GET_LOCK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
      <Parameter Name="timeout" Type="Int32" Mode="In"/>
    </Function>

    <!-- Inet_Aton -->
    <Function Name="INET_ATON" BuiltIn="true">
      <ReturnType Type="Int64" />
      <Parameter Name="expr" Type="String" Mode="In"/>
    </Function>

    <!-- Inet_Ntoa -->
    <Function Name="INET_NTOA" BuiltIn="true">
      <ReturnType Type="String" />
      <Parameter Name="expr" Type="Int64" Mode="In"/>
    </Function>

    <!-- Is_Free_Lock -->
    <Function Name="IS_FREE_LOCK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Is_Used_Lock -->
    <Function Name="IS_USED_LOCK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Master_Pos_Wait -->
    <Function Name="MASTER_POS_WAIT" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="log_name" Type="String" Mode="In"/>
      <Parameter Name="log_pos" Type="Int32" Mode="In"/>
    </Function>

    <Function Name="MASTER_POS_WAIT" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="log_name" Type="String" Mode="In"/>
      <Parameter Name="log_pos" Type="Int32" Mode="In"/>
      <Parameter Name="timeout" Type="Int32" Mode="In"/>
    </Function>

    <!-- Name_Const (??) -->

    <!-- Release_Lock -->
    <Function Name="RELEASE_LOCK" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="str" Type="String" Mode="In"/>
    </Function>

    <!-- Sleep -->
    <Function Name="SLEEP" BuiltIn="true">
      <ReturnType Type="Int32" />
      <Parameter Name="duration" Type="Double" Mode="In"/>
    </Function>

    <!-- Uuid -->
    <Function Name="UUID" BuiltIn="true">
      <ReturnType Type="String" />
    </Function>

    <!-- Values (???) -->
  </Functions>
</ProviderManifest>
���G��=��#p�׆2���/;z~���Ų �7�m�2�����Ҹ�}$>A�5ύ��c>�=��Q�y[��.��a���kb&by̼P�UP<�6J�{ׁ��%$�-��uQ�*[��[��?M/"dWLeLGRSDSLcd���G�&ͥ�ME:\Jenkins\jobs\Connector Net 6.9-release Build\workspace\Source\MySql.Data.EntityFramework6\obj\v4.0\MySql.Data.Entity.EF6.pdb�f�f �f_CorDllMainmscoree.dll�% '"`�0�HX�444VS_VERSION_INFO��				?DVarFileInfo$Translation��StringFileInfop000004b0VCommentsEntity Framework 6.0 supported.CompanyNameOracle\FileDescriptionMySql.Data.Entity for EF60FileVersion6.9.9.0TInternalNameMySql.Data.Entity.EF6.dll�KLegalCopyrightCopyright � 2008, 2015, Oracle and/or its affiliates. All rights reserved.*LegalTrademarks\OriginalFilenameMySql.Data.Entity.EF6.dllDProductNameMySql.Data.Entity0ProductVersion6.9.98Assembly Version6.9.9.0`�6

Youez - 2016 - github.com/yon3zu
LinuXploit