def METHOD_NAME(data):
    """
    Author: Jagadish Chatrasi (jagadish.chatrasi@broadcom.com)
    :param data:
    :type dict:
    :type bool:
    :return:
    :rtype:
    """
    ret_val = list()
    if isinstance(data, dict) and data.get('output') and data['output'].get('openconfig-interfaces:interface'):
        actual_data = data['output']['openconfig-interfaces:interface']
    elif isinstance(data, dict) and data.get('output') and data['output'].get('openconfig-interfaces:interfaces') and data['output']['openconfig-interfaces:interfaces'].get('interface'):
        actual_data = data['output']['openconfig-interfaces:interfaces']['interface']
    else:
        st.error('interface counters GET data is not as per format')
        st.debug('Provided data: {}'.format(data))
        return ret_val
    if actual_data and isinstance(actual_data, list):
        for intf_entry in actual_data:
            temp = {}
            if intf_entry.get('name') and any(port in intf_entry['name'].lower() for port in invalid_ports):
                continue
            temp['iface'] = intf_entry.get('name', '')
            temp['state'] = intf_entry['state']['oper-status'].upper()[0] if intf_entry.get('state') and intf_entry['state'].get('oper-status') and len(intf_entry['state']['oper-status']) >=1 else ''
            if intf_entry.get('state') and intf_entry['state'].get('counters'):
                counters_data = intf_entry['state']['counters']
                temp['rx_ok'] = str(counters_data.get('in-pkts', '0'))
                temp['rx_err'] = str(counters_data.get('in-errors', '0'))
                temp['rx_drp'] = str(counters_data.get('in-discards', '0'))
                temp['tx_ok'] = str(counters_data.get('out-pkts', '0'))
                temp['tx_err'] = str(counters_data.get('out-errors', '0'))
                temp['tx_drp'] = str(counters_data.get('out-discards', '0'))
            if intf_entry.get('openconfig-if-ethernet:ethernet') and intf_entry['openconfig-if-ethernet:ethernet'].get('state') and intf_entry['openconfig-if-ethernet:ethernet']['state'].get('counters'):
                counters_data = intf_entry['openconfig-if-ethernet:ethernet']['state']['counters']
                temp['rx_ovr'] = str(counters_data.get('in-oversize-frames', '0'))
                temp['tx_ovr'] = str(counters_data.get('openconfig-interfaces-ext:out-oversize-frames', '0'))
            ret_val.append(temp)
        st.debug(ret_val)
        return ret_val
    else:
        st.debug('Provided data: {}'.format(data))
        st.debug(ret_val)
        return ret_val