`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
MDpzPtR3C9I9oW17lNjdUqZqWnhoneh1DFNl/VvtpnKzziQtDAyHDSm2d9vnf5bf
qP8d87DnGbysqj9W1SsYeYIdY38spLGXvAC+BQeBAASKh8kVVwLb+/lff9vdYILE
COm19g42n4UR+43HCsYh41YjdRxm7HBCpI/B5cZzp5M=
`pragma protect encoding = (enctype = "base64", line_length = 64, bytes = 5824), data_block
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
Uvahrg3OCQtTUyEoliBmQA==
`pragma protect end_protected
