`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="24.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
FBsS3tdQkVNE0DogS4hHkXf0H1sNnG2Kydo9bE/gkGnTOHhpPxTRxK8Fwu3c
f+t3AgWzC/d1l/+45X2qGo8HqzOjBy6MqkdXOrFWVBDLvEIMVTUbfJlmIZVV
6vyEEwToGRYw26RwIUf7ggmVpbgGmB+yBnQZF6H5xEnhwjmXXQggpa3ac2Dy
gsuweuDBVhkD/RDlhMb6Oc/hxD2RSyM9HzKR7+mjrSWEoDVqQhIdkB0PcRr/
lLtUoCkZU/C1FB5rJZEzSAKbHXUdmJap8266haKyY8KTmJRVO8i50mX0jTZJ
Wz9rzvcUr5VSv+B2J4ihdsuhAJmd9ki6OhmTcZaG+Q==


`pragma protect data_method="aes128-cbc"
`pragma protect encoding=(enctype = "base64", line_length = 76, bytes = 5744)
`pragma protect data_block
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
KHOxquWuwWjgijaHco71m1oqxypJNECqgLlyevY=

`pragma protect end_protected
`ifdef QUESTA_INTEL_OEM
`pragma questa_oem_00 "jAnQr5suAtT91N+wxKY/U4lHCRax7ExWDPQO5FtMwOGWivoRO3PamTpK8lPvUC0FRWUDHnzs0gcgLdLQkIFERaCxl1x/L4/5gLsmjLJ0n/1sEr0uoGccr/SSURjBwbtUsv8o3TY6Y61PVR8SXIhTY+N24N1BVQvZhrQFgNF/lmPPPX72CTg8MNh3jy9QDkTaJk2h3ZmTRNvkqp+jweaOacUOqXoLO/rfZLgUgXDIEcobAH/vDiN7ThaS2+B+orcezzeyowW+09AXKeOaDKJ/VXfOfVbAUV0SUzGedfYgmO0VthDbi5hBC0sz3ttyA2y7TcSmXjARzYYaTwQpQE/iz8iouUCwv+vkVpTHyTRRzgV2WEOlt6ANo4b/cdAHhpL9TAHLp7jen3ubrNBvyFllzK4eOdTMWjTtTPAcFRNlhoHNh6snQxWMmZ0t9OQR6INnSoMuxhxK3R931XkFK2ivCsI0ZNblX5L+kOZGIHGcov6RS5a44Ze90/vdmenvvpJNgiT43ClxkBu45l74KDCwq1lQeHk0cialEHhxUA8kU6tyOCvCmahxXRpyk600MQGLKIM0GUIgdVh6tCrG9lK0eWk6qFp+6Qmn2EXXRA9EHN0BJs855KRylfnwP85taWOyWUwnlbRud4XY4tCagPXyIz8RhH+gEXoUnn9NT9wxGw8Sko5LqUwR9ITJ/eTBpjtGGANU076OxtAO66iKfNXeg7PIheuQ+aUpmmzSmQy71p1VH3thk26kk2mfKF35Gd3yVBJxK8H1sqVpa9Sh6Zx9PxjsvPDTn7Oe4yrLD4aExGAkpM9O0sv7vlPnTXn0E6VkZFPd8RY813eXqImKgyGMyGzAPNEmf8AxnTo3/PvtQn2PmO5rtsGk/HtEB/Z+2qbJZ/YdJDHH0swNKVKHpMIujvLPo7BklHFdigl8dv3ZeHUJ99X6M0KWgy9cHMw5k81dCPFV2wv1hsuNacLITxDWUIkILzt4fZSJYFqYPq5pWfbUWD+qnSj3xxT63FEegjpz"
`endif