`pragma protect begin_protected
`pragma protect version = 1
`pragma protect encrypt_agent = "Model Technology", encrypt_agent_info = "10.4d"
`pragma protect author = "Altera"
`pragma protect data_method = "aes128-cbc"
`pragma protect key_keyowner = "MTI" , key_keyname = "MGC-DVT-MTI" , key_method = "rsa"
`pragma protect encoding = (enctype = "base64", line_length = 64, bytes = 128), key_block
HEtGzHtNBm3D2HGpi5fgkLHtFR3BlkOmD3KscirLSHmK8UHSTb8Xh0q6ltmQlhHp
FhgGfdaOlIobCAUXNj+zU3rtouIFLF9FX1CSGo/Vjf7EiLOpQQb/m2TsVHEToGAo
VETrXPHg9naMknGaJVD6A408Gyt6Jz5xRFK0FAObIlc=
`pragma protect encoding = (enctype = "base64", line_length = 64, bytes = 6288), data_block
oXcXBuMCIcg2PJXMlDxhQ47v6hFhu/LfFGw/+OJ8L7N1WVqmHv4jVE7/+JQwgJp8
Bf0g8I91VGuR4jyN5/hkQosG9sp53PG2PY1fCRrOXl+ZqiI5AfeWRgprXd/FhBmR
CRTZo3fRIl9atjAvJPCgxyqNvH73RmPPxSNmV2uCzYQr8eJdXTVdrJTMmnKCivoe
5Jr3anq21YDUvHq7bnJKPwpTqzQ2y0PdG1adTFfhpYJMIEvIdBL4DD2abpYn+lT2
hZr0pfc68ZEFJ/VTo4pEs2FPgFpHU4djOpdRYMZ0DnyWHpYLnitj28GPtDIYLugC
sNlpEEBtsuGB+iVXYTWEKjaUvsGPhV8yJ0uts+XHM63MpqaIkFjtJa61lhkUS2f+
HCCNqPItPBaKuGEcgMKRIcziDiBSvbkVIw1U7xsoi0Xjhhe2CVeLY3ZfyBGOiCri
aX9WrQcesZoqTaWOXBJkQPon6FPz5l8flkKDYv1DsRvszGUBXy9QgR3ycNDdgmQ5
17/6wbxQwMXpwJN3WjbgENbXtaFA7xO3vL0+oBRB47Po8QvbOt7RXgZPvEaZcLOC
BlHlVj90aDK7mXj0+bANJnv7ywhEmpSIqpP1wDrcPjG8JPH2UrDekvSKvfMTmHuK
2E5j6e0NSPhR3TWAZEhDHpPmNXvnMvp9sRgOzmcH0YXUMZ3c/7VJ7rQ+WBDzVsJg
aYujdFetBEANukg9rMHOLE6uC3vjzTdWdAw79IsIawJxE2PyXXSW/QlptUUdvETm
Tkir5T/xp9wLXd98GUAByMYsTjY1CMAtyfv2z4ZrSXvQgvLY91ah5XgXk8hey7Tk
PCxkVbybeKI0PFPO+tN1Ke/JwjT4xGcFQthEQ/vc9Whe9tTUMoAjZ14DQ1i49rrz
cS3zQaUQlELYwFaRN/vwcyu4toqVaCzU4dpzRhTWsU8otcclBSsrhtmzR0ILXSSk
cZVk6Nng2J1RcL8IEJBGS4/VLW4CvyZS0YnSM05BQaw6FEawkkAC7hOT9yzG8ceD
rfhjvaK4TImC7nnn8bgufmctUKiJtbSJLeglPR8fr3D0zrkdULz0x73XE+jrXEN1
zxjvz7VcrBMt0LwayaKGnsyKcN9mvA2xlouRNotTKi5r1uVthpMW6gBzGvu1VuEO
dF0azRDpM97jRUGRWV7oLlIznFHI0e2cTMXmQjNqnyB38URzbNMv4IHKaUPPGjWL
+mcooMRXYyuMMY0ILPN//mPWfkli/gXFCA6jNUGykw6QesyMt8hDUjvrcjxCFWAT
yCR/vZK7qOgCeceA5n2ofCMIpD7HJ2e0cypRy8TbYxMEyyDsI3quLsrA/zl3vYNF
E0/SaIYskRvmuptL4RsotkBGReHyKR5ijWyQDIW28OsxzbuWNhJY/BoJN4c7+vhB
reOS6EbdjkMTRtkzUjz9H79+47mG9t/XVMoRgJtScVN2eESEWnCu61JgisBbML/y
uz9g7Wtu8k/k4cDVaddZpEk/uxgjtP1uvt2YpSFCKJnZSwrkfdoWWN9hOhD85KM9
8zfOpq+UVHzFgvo77e0Rcuaxfv9Nv4uVrDCC0cYQacchEdoGyAqX7duux9Yg+vky
TbnqaHqh4WmsidG1QtSoS+hmxlrSjn4NrE8WktQ2ZiZwZiDsbHBD5rAV90RCpZ0G
AcYpNI71dwDThP1Y338VlCxXCgWWZLc0o9CWnRS5vwdVlsNoRkQp3rTZD4zSxRQG
PLzPOcn4oNbTsyBeTdcYVAIVslQky8A3mazlC7fTnVIDQiO5TUAl4pchdgfg62Kt
q/NNG1vkkh3WeLt+28xue0TVvXFioOEkU6IXX9Va+29jbCjRfKY2wVAIS/95s2Fo
xHFoGleq1FiNUMJgnkSis7wrB5oSl2PD5x1F0nOKPfr9mGfx+B68Vnz/69tm9j5E
cP+zdxRo83BETRLHHyasxdEoK3okM+wY+vbmEvMXoF8CeNhObhGjPK6WpYHhSIn3
6txYyG4b7xbJ9+i5kOsWB96H5eQ+UcQBD5rUEDI5or8Kpx5Y1QTYvb1iGLhu1maM
v0KRxhsN3ZXXXabRKeozKj89RnDYFiLTjweqONZT5W4N/V8HOFf6o3FRdJt9r+rb
0ufMy8N2iEsmtnh/Kpg6NirFIop2Fu5DEsRp5qmPluH2WRBEI/fUCo6K9PfVliQR
mgju2VYy5uXFJ4MuNjlKmDRWbBl5s+Ngga3LBExsaPIVMolEk54ho8cGJwxV2CVN
jNL3miBfj+RslzzAbf2tNPbjEJUaix9/9F6rAPxxktdJ4i79rYh1mM/TIeVH10YG
RTRRO3XONK99ZMgK3MO1V6ZHQRL82XAObXxwvEgtpk3wxxd7zXBBxnBNkChn1MEj
dxzU5MjROWW2vAwllSs6Gj6FsnarcBb021ksdZ9bizF5iiXRFQ0wh2H/JXG3Yg80
R/tSXL1RH3dF/zMkPw+8LRvNO3qqAX7IU2C50u2BN03vkjIxAjpmRNPSebZy7jkK
6hCGvgwjqm6SIQIdhuU50Nr25F82Wg/JuMTbKXEqbJ1s4j5UKFwe2iKFOx7LNLBM
JFxFQRhMDYoQ612fOsJJq+22vTpD+MPXaFXQZ5HMTNYV+s/TnYxtZl0X1NTXGIDv
Xgq+mDf3007Y4rGwXnq/XBmCdbOTXkeMF9S89UZhT+yhtXRbJzlqNsg0xLsYofXo
c83VTR7pnKS7RpdqJVYIdcnIgRtA0hldIpxutyVT3ZRCiQz12qC8h9wDSPsnQx+W
tDSqZBUI9GQtn6sBwi29+2gfSNDWUR3U9mhCDxJiCZ+B3xRFlCZGotj79nqAIGqR
2E268O20VJBzFr6V9FBRuVUHaJO7ioT9ETIcxywJMNsMQ88MStIs0koEC+iHP54m
FhbNG27ScTUpaj8LPZSW3D3nENaNlW7Cxu0kWd7AGEMSh2YDJfvcdc2w6XHi6BF6
UraUUM6VpLhH9OEBPa2mtjTcnIp6lXBF9AXmRmeu8KV7c6/55ITKIpwKFgY4xCE9
0IDVxz6B4G58hkfYfI2LnNX6BZJZ9QaG5AhzjxB+VDtTTyOPF0V3hGxLwVvEauoG
RM1L7sciGKPGk+w9HcqIRdAswR5+1ZacqWLga65FZ/i9eH+3iiEaJPvjsrkbXBjY
ZSae0Hea7gFg+1Fowtoganm4o+t5/kECYIIFfOuAZu1Y236tbkJvyr13l0zNfqGq
BZxiXxeD9gjUZB44z107Rbts1KeNnjB78rpzPgJ1aUJoqy7E20F775P8/8HC1y7Y
q5C0y6rrfWdCiqtOQPCifHV81MbMyxj30fbD/TwWLZt619kOqfAzRdMbtSZPHIRR
+YvbA+qCDSGJxXenHsgYqI9iRC8z0j0poOP8xE7QzB1HOVQF+/OsWN33p3cbXoX8
8TRl9tNHOdJ1PaCNl6/qanFJ//n7jVfUHSmT+4F2lDisW4XYNqojhpJpS4NyYTLK
Pq2CPoHNJOJbidNj2jxmBQWc1ryPgZSRiTl3JCI8bYBzLoLqWGfqQu+ypT6wfDOv
DgWyD0IMy/7+4MG956zLcNe3AxgSoy1OUDC4gx0MxpGgFlmkRn3n7SkIMHqBNN0G
s4PjhNGm+QTubHGg/5zIWihxRoeerZUTdkc4oFweSbU6RaVboCZS5BTwYihRIvsQ
f8engS9UtivVyV9QpTCkAO8GeIpI7vO0ILzi9m1mBQUZ4oL0+I3b974PGQx8hyb9
npTugN9oc5KQk6lf4MTXZ+upzs+RcICOYmLyqQM6z5NSTERE1bMN+GbBjOSslCpZ
91LFsiFpSHVPOK+FMnTh8kQ6Dd6t9yhVQpKGBzdNei/GLrx02yClOl0fp6EyusjA
uQlfnVFq6ZOpwC7ZwIzaRx93stpVtwB+aFYmYX7M4Ef0PKdgpHWYPZqQjzLGxGeI
z5QXH1pwb8A9YRYit1iR9vh4lpRoYTrkwwFsCM20nHpqsSxqmKhc/zgtKuGDWR4X
RX2+rzx1JmZGFuLxOnEMNMfapr+KiXHg2KnMyrTao9638CTxbTPcKsj0dExqtec0
VfFN9J8U8Vx12QzVufdrz8AUEfjh+0eRV3OJkHNDIe0YFh4E/gWZE3JuPAsbguVV
ITMIvIYXdkgyVzZbL8i0c3iv9z04IHtefUAZQ6NaFlMx0Wa3OidHlF7NbND/HE8r
lTnKUGRCkBJZV4WSLfrs8fkGU63YgOv2jZ/pT2UeJ+7NdJJjNl/7gaVtcEawmrJI
koNst+2H6vDn6+hK942HqQ3JlwxvtpycJ5gN3h4mPL5aeuInJB/hKi24K/QOAhx+
TGCdQk2EQXQ9jr5q0v8Oeq3mR27tGEA/1X0FDyBs/bc76mhUuD/45kL9TjX1zr+X
iGwCVB2JYVYY5FTpIU7NBc+dKa1RjfPR1vdSTvf8GqYCra48rr2TZly41P8Pc7vn
O7sraPztiaXFdCwFDUOoB858W7EacC8WmHm6kEkCx489gzprmLggYMRqmUxn4xb/
2J/fAl8+kdRjQF4blyddzrLBLK00O9HAxlMnl5H+wT4iwp8Qb0y1c1MIA3/oPCjQ
Yuwh7pgINA4NMmc18cPeWztrfXrlZb2uJ5N+L8nb26uI2jngmUh8LeJEap0uqv17
vtFfYjog8/zLl0Sm1F5K/xFx4UL1qs1avtSIaOmfJoo0pxEU9Uol8la+jNWCPrKx
LxDNZORkVB2aAkPLK2U9D5c5l1OZOo2Co9sHzpScma7AnjVRfp98+RCINDjzm4tp
lj2cPdebe3Q9WeK3t6/OEo76eOKEdA71k5GezYuok3qauqmW9cAwjlkYCiIeaTUp
ze67ePlLH97XDu9zbmBnMYIHBwN4dz8sMAevMclgdmFiWAkwYgefSk4PGNJKscWu
dlP22SPTcEJCbIAESo91494yr+9FsQsuuO+LkkqL30toa+2+/WlPnXPfYpaKV/cP
+pDaGjg23aQI6scgmY98RYaGUtlmaxKxVoqm5plr0EqN+exIIwvhjaZll2GT62Kg
tgBGfNIbStOAQmVsdhX8SGqBj275/RQWmzBDkInQmHmT6xfNtueJcA4e6zyPfm6w
5ZiraNE8mAJbwGcgoDA37vEsefgWYabtiI6+8CWxzJQQ40hGVg01Mdr8H0X3Hl+B
crjhZGC9jynFV7XrqqfUpmvPkHQ1e55zz9v3YNDQYHkXZ8rROp1f4Sy5/Jc563Ly
i0seGSOMSRu79duTTWzIUsKWS0KslJwRaLD4QCsNE8oxvE47MMXxTsC/aZ1HD4Pr
N7larB/WoaA2AFf4qcRI/gBcUApdrffQnb/YvDkDyRAgmN1vMG3ZPde3YMgsp+7U
1XVSoykjCvYJisXizFTm0AaS6kqxwMurP3PjBL4Sv2goOhKwGtWTEr9f5rXawih7
2T1Gw/HERkWf6KW3lSRx2Z+DIMy24VqCI9LpAjOFMyRQfady5Ga/NdltVSzQPjRD
4O1N4Iapbgya3jZzGDarC0ZmH8gtbF0cgjAEG/jzd2vUFX79LKnfHfOmw37A+ZMp
fUpuRHoI52xpmBOvtzSxd9+xMPro6/FGVLr5dBMZSPamS1CdOXEXv3t6pfcfnf9w
mpSTpoSjQ0VLRAks63WK6+88cskEXn+R9C+wHw+mjxdGiQnBZ367z5AyKOjN8FPB
3SrkBHGBly0Y+Efv2YppS8q+e9WK0HjJS2NOmda12RuAfjDbU7ytvkPRpzPhNfUV
JBIJbuN6LwHPkUvsARu3jpOn1ryO8CGF+6Noi/wTZU1GD/4f7xKo3x+J0Gbf22+P
H+iEd9ftdP2qKCowWuaek2dFScO3rW6YS/ZdQCrVfDu8Dz49UXC5J3demZeVtxnR
zfbWR6L6ROh0Q/a2DFHtKQqrbiv3B9aJ+GZD1s5WoDl1cjCLKC+q2DNNn7Spb2p6
rA6P2f5TD2NcCU8FiKa0gOJlv1sDNyKEzX6eKALwZHDt55D7jeKC+DLCgydSz2LD
c20vuldOWZDahgfvcHHx9GX+q8jDHFuNmWXDKpMn9c75VgJ86OEjr4yBauOtZHDy
3HtVXVrGdwRSqf2XKdXKQBPEjVsbl8KeBBsambrGK9yBxVGMTmZ0paaFS1DT2jZ6
ZCi9u/14VCT32guREbpHuGj25DnV2+A530Pp4HoNURNgC9BKJZES3ot1G2WTBvqn
KOeVlUrJz6F3XIT44ipztiypQCmrlbwu6uZ6HwxFVAy3iYrcv4B0vjOxsUGN6Zl2
lwykM9CP0eaqmmgwoJkjbxxylE3b7loOvuQmaV/ebUAU8vx9iz9FDhtakRc7hxsR
qace4RI7chbRmBAj2KkIAnivaSMY6cCTcPtlTDmN3mAd0qSCXyBPHyVByve4Q9pG
4gDno//+/BgbvZJ8jzSULZyOdtvD4CpcxR3Nh6r3qTJuZDyUuY5ClD6Pp0LDxscz
ZN4ptBAcc6GhpgQ56CjyCLIX7nINLAu9bs1L+l4PErwSar3fyv/Tz9cZiFXB8ImL
y5n0VBVMjcYfsmKZU+JKGkLwznYhX31/ABo+vLFah+T3tpvIYU3dSxe3PQolH4+W
iSRFgJJQJ4l6yrha6JeD0hLxC4xTuaFTKwaMVc2LI4H2CCVGFg2O4wiQQGbXOlIy
LmEcdeQDySZMClauiZkPBzDXWaJUCzIaUuGgFrdECKzjbgZULoGwlgPsSsnCGQ5M
XQS/vCl1OatvHi4TbWwyIMH9m8SuOu41bQR0Cy5TY58ZER6zQmNG+ZRh96U5eMQe
p/dTDKKXbIRd03qdJH4XRXLfs91ejCVI5qy1wQG78Mi7nPUHmrA6oslB9YLjxI9w
1Gytmh/fmC3eF1MyF9VpSdKZVFgGi7FXVGmmRmt+qeVVg+nysJgVFB4NdYwC2VuV
DnmEDtLfXCE5dlwCNEOW80XVEsiqK/tHcWwHTD8HrADP7p1OGTqLK7gpxJwxBjKa
a+AuVI+yegMKIya6thGt17Vv1Dvq3bFrmt6jMeWWAJWQ8+/hRmuHr4z5xPL/X+RE
Owrxzo+52MskOKtmi5IwzRmkD4254cRjQkDLpe7nSbJQ2qthG18dcyScQQvBgfOO
AIxocr2hZWyWhe102Hsl/H1LQrTBDyG+MYLSUAbThP71DI6Hnw73oYZa4LhGQ3pV
RBxt3EL/z56xMH/io4Ap8dqlp+zERtLdXE4D1WT+MTKc8VCdp4TeWuhvx/89sek5
xFo1O7jX0kJDyLo8McvYE0X5Q6IS+fXTm5UPb8LJ1QScybLmwG5oIXEkXHCVvfnS
kIEyH4u8YG9droFtJxcWD2SEF/SX1I/87o36svXvwujENnRYyO1jHd8GycnB+p7Q
K26Bv4fDna2yZN9UIa5HnhjvANkaqFGGGUwbeDfqiZ3gpsAcrJywzwtMUlDI+yXZ
/88OGh4g2W+nfjisYajk+d5zjS6zEOZcoqB9Dl/R6T36dyiDKB3Pf6ymFrlDle6o
650nc2BeseHOL/RY+bKipN0O3DgZh5Xygz3OccLrVaoZagAdTJrFMD0zMk8jAm11
t7GAdCdiC6Z6rnZhSm4zecFW71o4Hm5HNaxxI6Sue/Mfb+yNA6wd9RuEEPn6N+AU
NwKyIpbP3RUPjC4VnD52AroxD48Jvahz81dl/zViNC8vGV6ZsxDi7hnSFtfJ6nrK
QdqEh4TELbQd77vYlgVdTttXa23gCKGYnTvZKmSFZGfdphFtHoCEOWUhJa3qFoEq
b3L8evbr0lbbigSSZG7hXCxNFywU0annsNInKlOkqJlt6sEznHdJIbksmWv4Xsqj
0fx9lrgLK6i3QMdun/CGWwOCT49qXNii8QmP++8IzB2YPYST+76MN5LirLw5uqcW
1iruZGcROlBWeOsBauHiXoQTi52vEbYfJaYwjkdxKMLRn2AP0I2rWRHfQ6BsokVy
7xyb1q2kVD59HJJCvuk7oz3I2GZfQAjdLx2ojGQN7pCiUJTph0Xk1XyPlXYZ9RtI
446Fp2hRRj0xDPXC8dGDgWFCIWadyd9mEYNYH0PRNikc3lVRRIYxdMJMIfVo8Nxe
qkz0HZuOLHY+OmkPGO7yfEes7ZYkS0lvDot/D6RiKMCCf7tUOJNVGeZVZaUVECPz
lK6+wh7PsPHksgUhOUGQH4W2x5mJIG+ia6YkmoLLQpnAXhUf8Q/EoHXL8HONuscO
e5wWdorb1004fQoImdC4xSRl+PbRL1TgcJoK08QRt+q0841Y1Vy8+0H7Ig37EUvC
YuTv8ed+l2cbrzpoTW4ekAQbkZOVSZTTuUlzwXDMtzF0WuLtqoUKMP+wZNRSKJvz
fpmO5JmWEzxvrOpZGvWDh6gSch6yt7po2aeIy8VKCJ0aK3aoJIDQfLzNJsvoQxP5
kFUdEHdH6xDPqM01NZyA7y6cTFUBj9lsNnCLvnBEg7kWut+O5Jmjgy2aerUhO7CN
`pragma protect end_protected
