title: I can't figure out what I am doing wrong in the smart contract I am writing. It includes a random mint function with a constructor
body: <p>I'm really new to coding and to the smart contract world so I'd really appreciate some help with this. Thank you very much.</p>
  <p>My code is:</p>
  <pre><code>pragma solidity &gt;=0.7.0 &lt;0.9.0;
  
  import &quot;https://github.com/1001-digital/erc721-extensions/blob/main/contracts/RandomlyAssigned.sol&quot;;
  
  contract NFT_Test is ERC721Enumerable, Ownable, RandomlyAssigned {
    using Strings for uint256;
  
    string baseURI;
    string public baseExtension = &quot;.json&quot;;
    uint256 public cost = 0.003 ether;
    uint256 public currentSupply = 0;
    uint256 public maxSupply = 5000;
    uint256 public maxMintAmount = 50;
    bool public paused = true;
    bool public revealed = false;
    string public notRevealedUri;
  
  function RandomlyAssigned(uint256 , uint256 num) {
      for (uint256 a = 1; a &lt;= num; a++) {
          mint(msg.sender, amount);
      }
  
  constructor(
      string memory _name,
      string memory _symbol,
      string memory _initBaseURI,
      string memory _initNotRevealedUri
    ) ERC721(_name, _symbol) {
      setBaseURI(_initBaseURI);
      setNotRevealedURI(_initNotRevealedUri);
      RandomlyAssigned(5000,200)
    }
  
  
    // internal
    function _baseURI() internal view virtual override returns (string memory) {
      return baseURI;
    }
  
  // public
    function mint(uint256 _mintAmount) public payable {
      uint256 supply = totalSupply();
      require(!paused);
      require(_mintAmount &gt; 0);
      require(_mintAmount &lt;= maxMintAmount);
      require(supply + _mintAmount &lt;= maxSupply);
      require(tokenCount() + 1 &lt;= maxSupply(), &quot;YOU CAN'T MINT MORE THAN MAXIMUM SUPPLY&quot;);
      require(availableTokenCount() -1 &gt;= 0, &quot;YOU CAN'T MINT MORE THAN AVAILABLE TOKEN COUNT&quot;);
  
  
      if (msg.sender != owner()) {
        require(msg.value &gt;= cost * _mintAmount);
        require(balanceOf(msg.sender) &lt;= 1);
      }
  
      for (uint256 i = 1; i &lt;= _mintAmount; i++) {
        _safeMint(msg.sender, supply + i);
      }
  </code></pre>
  <p>The error appears here:</p>
  <pre><code>constructor(
          string memory _name,
          string memory _symbol,
          string memory _initBaseURI,
          string memory _initNotRevealedUri
        ) ERC721(_name, _symbol) {
          setBaseURI(_initBaseURI);
          setNotRevealedURI(_initNotRevealedUri);
          RandomlyAssigned(5000,200)
        }
  </code></pre>
  <p>The error received is:</p>
  <pre><code>from solidity:
  ParserError: Expected primary expression.
      --&gt; contracts/Copy_Dirty_Staffy_NFT.sol:1255:1:
       |
  1255 | constructor(
  </code></pre>
  <p>I suspect that there may be other errors that I haven't yet gotten to, however, if I remove the Randomly Assigned function completely and keep just the original code written by hashlipz, the contract works with no issues.</p>
  <p>Thank you so much to anyone willing to help and apologies I'm a noob.</p>