Skip to content

Instantly share code, notes, and snippets.

View m-waqas88's full-sized avatar

WaQaS - 0xe4669da m-waqas88

View GitHub Profile
@m-waqas88
m-waqas88 / PoC.sol
Created December 27, 2024 12:26
Autonomint
// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.8.22;
import {Test, console2, console} from "forge-std/Test.sol";
contract Playground {
function play() public view {
_verifyLRTYieldCalculation();
@m-waqas88
m-waqas88 / TestTemplate.sol
Last active June 25, 2025 14:15
Test Template
// SPDX-License-Identifier: MIT
pragma solidity 0.8.27;
contract Main {
function test_name() external {
//! Inputs
//! Pre States
@m-waqas88
m-waqas88 / GetTokens.sol
Last active June 25, 2025 14:15
Add Tokens to any account
// SPDX-License-Identifier: Licensed
pragma solidity 0.8.25;
event MyLog(string key, uint256 val);
event MyLog(string key, address val);
event MyLog(string key, bytes32 val);
interface IERC20 {
function balanceOf(address account) external view returns (uint256);
function transfer(address to, uint256 amount) external returns (bool);
@m-waqas88
m-waqas88 / MyScripts.sol
Created September 3, 2024 07:48
Custom smart contract auditing script
// SPDX-License-Identifier: MIT
pragma solidity 0.8.9;
import {Script} from "forge-std/Script.sol";
// import "contracts/access/MidasAccessControl.sol";
// import {ERC1967Proxy} from "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
struct Ctx {
uint256 counter;
@m-waqas88
m-waqas88 / DualProxyChainCall.sol
Created August 8, 2024 07:23
Implementation of Dual Proxy Chain call, mocking Minimal Proxy and UUPS Proxy. This is just for testing and understanding the logic.
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;
import {Test, console} from "forge-std/Test.sol";
contract MinimalProxyClone {
uint256 public a = 10;
UUPSProxy public uupsProxy;
address public immutable uupsProxyAsImplementation;