Burn function with Stop Burn for ERC20 / BEP20

Hi Guys and Girls,

i have now buildt my own token. Still new to solidity.

Now i would like to burn every time the contract is interacted with a burn 0.005 % of the total supply and stop when it reaches 50% of initial supply.

Can you guys kindly help me writing the right function.

Thank you

g950x

//  _______   _____    _______ _______ 
// /    ___/ /  _  \  /   ___//    ___/
// \____  \ /  ___  \(  (___  \___   \
// /______//__/   \__\\______\/______/
// SPDX-License-Identifier: MIT
/// @custom:security-contact thatsucks@me.com

pragma solidity ^0.8.0;

import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";

contract SkullAndCoinsSocietyToken is ERC20, ERC20Burnable {
    constructor() ERC20("Skull and Coins Society Token", "SACS") {
        _mint(msg.sender, 3000 * 10 ** 18);
    }

}```