If Constructor Arguments are required by the contract, you will add them to the Constructor Arguments field in ABI hex encoded form. Constructor arguments are appended to the END of the contract source bytecode when compiled by Solidity.
An easy way to find these arguments is to compare the raw input code in the transaction details to the contract creation code in the code section of the contract.
When are constructor arguments used?
From the Solidity docs: When a contract is created, its constructor (a function declared with the constructor keyword) is executed once.
A constructor is optional. Only one constructor is allowed, which means overloading is not supported.
After the constructor has executed, the final code of the contract is deployed to the blockchain. This code includes all public and external functions and all functions that are reachable from there through function calls. The deployed code does not include the constructor code or internal functions only called from the constructor.
Steps to find and include Constructor Arguments when verifying a contract.
1) Find the contract creation transaction. This is the transaction that created the contract, not the address of the actual contract. You should see a link to it in your wallet history. Copy and paste into Blockscout.
Contract Deployment Transaction
2) Go to the transaction details page for the contract creation TX. Within the details, you will see the Raw input. Copy this input in Hex format and paste into a txt document or spreadsheet where you will compare against a second ABI code.
3) Go to the contract creation address. You can access through the transaction details at the top:
4) In Contract Address Details, click on the Code tab.
5) Copy Contract Byte Code.
Copy Contract Byte Code
6) Paste into a document next to the original raw input ABI. This will allow you to compare the two. Anything that appears at the END of the Raw input code that does not exist at the end of the Contract Code is the ABI code for the constructor arguments.
The code may differ in other ways, but the constructor arguments will always appear at the end. Copy this extra code and paste into the constructor arguments field along with the other information needed to verify your contract.
Enter Constructor Arguments if required when verifying a contract