`pragma protect begin_protected
`pragma protect version=1
`pragma protect author="Intel Corporation"
`pragma protect encrypt_agent="Quartus Prime Pro Software"
`pragma protect encrypt_agent_info="25.1"

`pragma protect key_keyowner="Intel Corporation"
`pragma protect key_method="rsa"
`pragma protect key_keyname="Intel-FPGA-Quartus-RSA-1"
`pragma protect encoding=(enctype = "base64", line_length = 76, bytes = 256)
`pragma protect key_block
RquCW8/yXjjzXTvsJDwoXatv7IxWSNRHSAg2GNGqKtVx77l67XolWVYFWxlV
CnZl5S5+TeXziTQV8m1jnvVLG0H+2AYNK+w1WOf2rtJRmxyf7M82+qOPU+YU
kZQJhDY1J2QcUFKjJfLxxiJWYimlfWHADAdOO2m727b/UIiU5EIrE4zdtNTT
IBZ4mM+6dc5dWlq7LfHc3cj+Hcm1omqOLeWp4vfWfrxjHRLmq7/spnNrxosh
Jo7FOa3pb8AFlaWc+TR9PU1N4BlNGhbGBkqC7ksUlj/7/cvkcUDHdR9QEo0M
TUTroqExTqaeIbWvUbGGZ8VxREf2PVojtvyIg2HCVg==


`pragma protect data_method="aes128-cbc"
`pragma protect encoding=(enctype = "base64", line_length = 76, bytes = 6208)
`pragma protect data_block
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
pPbYG9IerHdm+w7hJg0kqetZ9jJGI84yC/ISN5jwgQMf9nKARNcg1y9VTQX4
lL3Prj0Rc2lCAeO0QinUxgkfHDY/cGGAZRwZtHaxGb6uTIDMixtigMJkMHDS
wWwmGILPdUvh88J30BpjSY/a2/+qNu0l1knFtFeevTaddx31FgHiZ3byfBok
nCAjXJv4/YuzyrXKVb2GfAITqTbOHKjN9b7cFNWiyCxS04kQK5K8pvI4BAuP
K1kwHYCy385AWI8aveAbu+u1GFALvI0CabCtEGOgN/RFge9EHlLhnSaTN8kZ
NsduupVFpJOKvlHdmJBiy//7SyP7UYzqr8P0aPmvVEjB8iumdszti9vBknyt
VZE20e4ZMcv20Z587c2cSza0cef46C5ZeR5eadBf0BkjabsDSKmtoZiKyYTc
ehT+DCoo1UrWzpxfIpx4nXINFrR5yd9CEyc8Mm0x+BO9DkY6O98xm1j8gd3R
FuQVLCCO0S/r8mAwKODUCdqjpqlZfzGEl+hRgxMRsCeOcxB4Ojb+ALpmMRZS
vKp54IZJio87JeJFQ46l+TZ8LHyZ//r8EVQ9ElQuWSaitnax66G0H8JytRxd
GxrjeRcLrxj9cRu6w0qp6abksxR+zhQcQ7F0pvhxEgJfV4tWBtrwo9g0NJoP
lmySvOyn4n8sKkV8Bj7xUOd4izLf4DBAuz+RNPbhEUA1WWqg4drzKN1p+8F0
rBmVvkf+WNFE0ody2GvxyIT4VDpTjBvarC57zG0FHCM3xXJgSs8fmUGqS1fs
NvQPB2y9aWN8n2ql+G1KO2vuHz/ox+Tyri1D7m6k7aVGXPlne3oaf7dmzb0o
3RQm7lFjCdB1yMNarWKRzTpRLKehrvMsZDby6BEVN7AwZ/zUG1OggpWB8eVJ
J+XWJyYdU4o2Y/sBhdGsOftYZD3RN7h3M6KnXcFA7SEVQQRSvThqhvT+dNNF
mZKF4LBr8RKUlmXgnXxMBpVW9shXVovYg3e13NXwKnM5cvJczRz+6EjM5o1T
8/S8IHdu5J6Hxf/xI9LPGpOydh/zgLwcqncNGfqL+nY6rexbMF+ScFmHdGcy
0sxDibV/TvKLTjYnGPXHBZZqG3xWxT3IbOjechCUtOsuLIQu+TLEnUndOoFS
fMTlvIQcFXC9GPYsvp/pFm2Yt0A2nLH2XXF5sjifEczpzpaDdm/QuGRhGPNf
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

`pragma protect end_protected
`ifdef QUESTA_INTEL_OEM
`pragma questa_oem_00 "W3Yug/kISPJySRwr+r0TDtVdMBlUlwJGK+4L+Ci7xIkq9uWZj4PsMpEWva1Uo1LhuotG+AAkVEuQQVxRhpUwNnIXh5O7yYkaMK4/yr6hkbOqFDBnK+k0jkNl9N8gntbTn7aaLufiGzOzoFBtmcLOlwIx4Nw1Q/dl8oTJAjtZDiEOWWSHLH8JDCx0PzrjxNdNXx8B0B7CmE7vrTepzWcPStGw1Yq98nwL7nsZHsSsQbuvEA4RTFCVtPXQZr9O16lq5bFuHfclKkWhXoRhAphkH9ofsZBD3AEvclxdQQ+/5Gn+4NfoC8Rd9IG41AyzHzCK2tfuRUYV0NJKcyjiDm88oXq2lm8P8SHAsdHDzBKx0ty/Jm/hLAwjJjDx0MHzVJCnbnIIvlHmynz4iyIlodmqWH8R04BVl2KgATCh1MLLEbRazHa/AgvnElsCj4bu1mwaL57yWrBwpA2+QamAvBPa8y7swJjpUrYVoNcoo7HkloscbQjUQTDeUaMgYQ/3Lymfk0UXrp2f6xc8vXOIIbiGJr8Tk7hL0WPOz3BzluXKK6sWuL87wT9k207c+e0lp6KYyfDyx1VPYWOZ8mDrKJfFS3fzFVm30dyyKhWhI+yZbEn6U8PVoDVcboIYIPuA4tOb0/KP6r4kafZAwr0c5YyaZizXpeWoqfQioH8QPsprEZ1kaD+GDXX+DpIU1ePuTZcYQZI3nKKb65/EjZJ3PoxaUo3yAujZiHv37BDwZd0be4ItUfp+JbfqY0m9v/F14kS79Jx7fUEB29dbV5WxLaiY9M8GXXpYQjOYSWUbSwCFaoATMCIZuoeZ5zGiAGeBtjfYl0jOECguq3Y0yDjjIVzibtQ45Y14pjUnMdak0QMiwTIEmcZtTgFknUx8iYwGZGKzpLNlsytiGOD/hjYrLpG0F591ZurkRFWIMEi781DTkEpHMb1Upmpb5VO3CkGSUc0zDN3uyrS4RuVaSCSttqC1N1C/PKrtIXuilasTZxB0a/qnYho07mAssb/b3OesWkyH"
`endif