This smart contracts'main features include fund and withdraw.
This project currently supports Goeril.
Anyone can deposit ETH to this contract, but only the owner(0xE12C5dad65B5FB66c339C9f8EBdC18F48C7f0164) can withdraw all of this contract's ETH balance. And the minimum price of the deposited ETH should be greater than 50$. So if your deposited amount is less than 50$, the transaction will revert.
One point that should pay attention is this contract uses chainlink price-feeds service. For my demo, This contract uses the contract(ethUsdPriceFeed:0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e) and then calculates the eth USD price based on the deposited ETH to judge whose value whether bigger than the 50$.