``` go type Message byte func (m *Message) Foo() { } func (m Message) Foo() { } func (m Message) Foo() string { return "" } ```