```\nfunction test_poc() external {\n        // set token balances\n        deal(vaultTested.asset(), user1.addr, 20); // owner\n\n        vm.startPrank(user1.addr);\n        IERC20Metadata(vaultTested.asset()).approve(address(vaultTested), 20);\n        // owner deposits tokens when vault is open and receives vault shares\n        vaultTested.deposit(20, user1.addr);\n        // owner delegates shares balance to user\n        IERC20Metadata(address(vaultTested)).approve(\n            user2.addr,\n            vaultTested.balanceOf(user1.addr)\n        );\n        vm.stopPrank();\n\n        // vault is closed\n        vm.prank(vaultTested.owner());\n        vaultTested.close();\n\n        // epoch = 1\n        vm.startPrank(user2.addr);\n        // user requests a redeem on behlaf of owner\n        vaultTested.requestRedeem(\n            vaultTested.balanceOf(user1.addr),\n            user2.addr,\n            user1.addr,\n            ""\n        );\n        // user checks the pending redeem request amount\n        assertEq(vaultTested.pendingRedeemRequest(user2.addr), 20);\n        vm.stopPrank();\n\n        vm.startPrank(vaultTested.owner());\n        IERC20Metadata(vaultTested.asset()).approve(\n            address(vaultTested),\n            type(uint256).max\n        );\n        vaultTested.settle(23); // an epoch goes by\n        vm.stopPrank();\n\n        // epoch = 2\n\n        vm.startPrank(user2.addr);\n        // user tries to claim the redeem\n        vaultTested.claimRedeem(user2.addr);\n        assertEq(IERC20Metadata(vaultTested.asset()).balanceOf(user2.addr), 0);\n        // however, token balance of user is still empty\n        vm.stopPrank();\n\n        vm.startPrank(user1.addr);\n        // owner also tries to claim the redeem\n        vaultTested.claimRedeem(user1.addr);\n        assertEq(IERC20Metadata(vaultTested.asset()).balanceOf(user1.addr), 0);\n        // however, token balance of owner is still empty\n        vm.stopPrank();\n\n        // all the balances of owner and user are zero, indicating loss of funds\n        assertEq(vaultTested.balanceOf(user1.addr), 0);\n        assertEq(IERC20Metadata(vaultTested.asset()).balanceOf(user1.addr), 0);\n        assertEq(vaultTested.balanceOf(user2.addr), 0);\n        assertEq(IERC20Metadata(vaultTested.asset()).balanceOf(user2.addr), 0);\n    }\n```\n