`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
kVjpKy4MuQ2OjipZ6iXcqM4w7y/J01tP8J8a12puiqfrcY7FOmIeWY65w0BwQEGJ
5iA9l8sXqHNgHtzf/23AgZ2lKfoVYtzL3hCNPj17RcEa0G6fKfiSPfda2/8hJ55d
PYcEJM+TZR+93k2W6oZrP4yX5kRg88ywljA9Yxcn2Wo=
`pragma protect encoding = (enctype = "base64", line_length = 64, bytes = 7264), data_block
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
27NQJKJP1chGYSKtQFBHXQ==
`pragma protect end_protected
