func (i *IE) HasEVEQU() bool {
	switch i.Type {
	case ReportingTriggers:
		if len(i.Payload) < 2 {
			return false
		}
		u8 := i.Payload[1]
		return has6thBit(u8)
	case UsageReportTrigger:
		if len(i.Payload) < 3 {
			return false
		}
		u8 := i.Payload[2]
		return has1stBit(u8)
	default:
		return false
	}
}
HasEVEQU reports whether an IE has EVEQU bit.
package ie
import (
	"encoding/binary"
	"io"
)
func NewReportingTriggers(triggers uint16) *IE {
	return newUint16ValIE(ReportingTriggers, triggers)
}
func (i *IE) ReportingTriggers() (uint16, error) {
	if len(i.Payload) < 2 {
		return 0, io.ErrUnexpectedEOF
	}
	switch i.Type {
	case ReportingTriggers:
		return binary.BigEndian.Uint16(i.Payload[0:2]), nil
	case CreateURR:
		ies, err := i.CreateURR()
		if err != nil {
			return 0, err
		}
		for _, x := range ies {
			if x.Type == ReportingTriggers {
				return x.ReportingTriggers()
			}
		}
		return 0, ErrIENotFound
	case UpdateURR:
		ies, err := i.UpdateURR()
		if err != nil {
			return 0, err
		}
		for _, x := range ies {
			if x.Type == ReportingTriggers {
				return x.ReportingTriggers()
			}
		}
		return 0, ErrIENotFound
	default:
		return 0, &InvalidTypeError{Type: i.Type}
	}
}
func (i *IE) HasLIUSA() bool {
	switch i.Type {
	case ReportingTriggers:
		if len(i.Payload) < 1 {
			return false
		}
		u8 := i.Payload[0]
		return has8thBit(u8)
	case UsageReportTrigger:
		if len(i.Payload) < 2 {
			return false
		}
		u8 := i.Payload[1]
		return has3rdBit(u8)
	default:
		return false
	}
}
func (i *IE) HasDROTH() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has7thBit(u8)
	default:
		return false
	}
}
func (i *IE) HasSTOPT() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has6thBit(u8)
	default:
		return false
	}
}
func (i *IE) HasSTART() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has5thBit(u8)
	default:
		return false
	}
}
func (i *IE) HasQUHTI() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has4thBit(u8)
	default:
		return false
	}
}
func (i *IE) HasTIMTH() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has3rdBit(u8)
	default:
		return false
	}
}
func (i *IE) HasVOLTH() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has2ndBit(u8)
	default:
		return false
	}
}
func (i *IE) HasPERIO() bool {
	if len(i.Payload) < 1 {
		return false
	}
	switch i.Type {
	case ReportingTriggers, UsageReportTrigger:
		u8 := i.Payload[0]
		return has1stBit(u8)
	case ReportingFrequency:
		u8 := i.Payload[0]
		return has2ndBit(u8)
	default:
		return false
	}
}