```\nunchecked {\n    for (uint256 i = 0; i < claimCount; ++i) {\n        // Load claim in memory\n        MerkleClaim memory claim = claims[I];\n\n        // Requires one proof per tokenId to handle cases where users want to partially claim\n        if (!MerkleProof.verify(claim.merkleProof, settings.merkleRoot, keccak256(abi.encode(claim.mintTo, claim.tokenId)))) {\n            revert INVALID_MERKLE_PROOF(claim.mintTo, claim.merkleProof, settings.merkleRoot);\n        }\n\n        // Only allowing reserved tokens to be minted for this strategy\n        IToken(tokenContract).mintFromReserveTo(claim.mintTo, claim.tokenId);\n    }\n}\n```\n