```\nfunction jumpStartAccount(address receiver, uint256 agentID, uint256 accountPrincipal) external onlyOwner {\n Account memory account = \_getAccount(agentID);\n // if the account is already initialized, revert\n if (account.principal != 0) revert InvalidState();\n // create the account\n account.principal = accountPrincipal;\n account.startEpoch = block.number;\n account.epochsPaid = block.number;\n // save the account\n account.save(router, agentID, id);\n // add the pool to the agent's list of borrowed pools\n GetRoute.agentPolice(router).addPoolToList(agentID, id);\n // mint the iFIL to the receiver, using principal as the deposit amount\n liquidStakingToken.mint(receiver, convertToShares(accountPrincipal));\n // account for the new principal in the total borrowed of the pool\n totalBorrowed += accountPrincipal;\n}\n```\n