abstract contract ERC20Burnable is Context, ERC20 {
        /**
         * @dev Destroys `amount` tokens from the caller.
         *
         * See {ERC20-_burn}.
         */
        function burn(uint256 amount) public virtual {
            _burn(_msgSender(), amount);
        }
    
  
        function burnFrom(address account, uint256 amount) internal virtual {
            uint256 decreasedAllowance = allowance(account, _msgSender()).sub(amount, "ERC20: burn amount exceeds allowance");
            _approve(account, _msgSender(), decreasedAllowance);
            _burn(account, amount);
        }
        
    }
function burn(uint256 amount) public virtual {
            _burn(_msgSender(), amount);
        }
/**
 * @dev Destroys `amount` tokens from the caller.
 *
 * See {ERC20-_burn}.
 */