diff --git a/docs/contracts/permit2/reference/signature-transfer.md b/docs/contracts/permit2/reference/signature-transfer.md
index f634bcddbd..76ebfe8449 100644
--- a/docs/contracts/permit2/reference/signature-transfer.md
+++ b/docs/contracts/permit2/reference/signature-transfer.md
@@ -209,7 +209,7 @@ It’s important to note that when hashing multiple typed structs, the ordering
Instead of using incrementing nonces, we introduce non-monotonic, or unordered nonces with a `nonceBitmap`.
-The `nonceBitmap` maps an owner's address to a uint248 value, which we will call `wordPos` which is the index of the desired bitmap. There are 2**248 possible indices and this 2**248 possible bitmaps where each bitmap holds 256 bits. A bit must be flipped on to prevent replays of users’ signatures. Bits that are dirtied may not be used again.
+The `nonceBitmap` maps an owner's address to a uint248 value, which we will call `wordPos` which is the index of the desired bitmap. There are 2248 possible indices thus 2248 possible bitmaps where each bitmap holds 256 bits. A bit must be flipped on to prevent replays of users’ signatures. Bits that are dirtied may not be used again.
```solidity
// nonceBitmap[ownerAddress][wordPosition] retrieves a uint256 bitmap
@@ -238,4 +238,4 @@ A signer called Bob signs a permit to transfer 100 USDC with a router contract a
-Universal Router protects against this by checking that the `msg.sender` from inside the routing contract is the supposed spender by passing `msg.sender` in as the `owner` param in any permit calls and by passing in `msg.sender` as the `from` param in any transfer calls.
\ No newline at end of file
+Universal Router protects against this by checking that the `msg.sender` from inside the routing contract is the supposed spender by passing `msg.sender` in as the `owner` param in any permit calls and by passing in `msg.sender` as the `from` param in any transfer calls.