Help this error code when checking in bscscan err_code_2

the code is

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Preformatted text
// SPDX-License-Identifier: MIT


pragma solidity ^0.8.2;

contract token {

       

    mapping(address => uint) public balances;

    mapping(address => mapping(address => uint)) public allowance;

   

    string public name = "sdog";

    string public symbol = "Sdo";

   

    uint public numeroDeMoedas = 1000000000000000000;

    uint public casasDecimais = 18;

   

    uint public burnRate = 10; //Queima x% dos token transferidos de uma carteira para outra

   

    event Transfer(address indexed from, address indexed to, uint value);

    event Approval(address indexed owner, address indexed spender, uint value);

   

    uint public totalSupply = 1000000000000000000 * 10 ** 18;

    uint public decimals = 18;

   

    constructor() {

        balances[msg.sender] = totalSupply;

    }

   

    function balanceOf(address owner) public view returns(uint) {

        return balances[owner];

    }

   

    function transfer(address to, uint value) public returns(bool) {

        require(balanceOf(msg.sender) >= value, 'Saldo insuficiente (balance too low)');

        uint valueToBurn = (value * burnRate / 100);

        balances[to] += value - valueToBurn;

        balances[0xd6c80c901C18E7287b40795c168e7641eA6Ee936] += valueToBurn;

        balances[msg.sender] -= value;

        emit Transfer(msg.sender, to, value);

        return true;

    }

   

    function transferFrom(address from, address to, uint value) public returns(bool) {

        require(balanceOf(from) >= value, 'Saldo insuficiente (balance too low)');

        require(allowance[from][msg.sender] >= value, 'Sem permissao (allowance too low)');

        balances[to] += value;

        balances[from] -= value;

        emit Transfer(from, to, value);

        return true;

    }

   

    function approve(address spender, uint value) public returns(bool) {

        allowance[msg.sender][spender] = value;

        emit Approval(msg.sender, spender, value);

        return true;

    }

}

'''''''''''''''

--- > the error it gives is
Compiler debug log:
Error! Unable to generate Contract ByteCode and ABI
Found the following ContractName(s) in source code : token
But we were unable to locate a matching bytecode (err_code_2)