manager.go//package mainpackage mlib import "errors"type MusicEntry struct { Id string Name string Artist string Source string Type string} type MusicManager struct { musics []MusicEntry } func NewMusicManager() *MusicManager{ return &MusicManager{make([]MusicEntry,0)} } func (m *MusicManager) Len() int{ return len(m.musics) } func (m *MusicManager ) Get(index int) (music *MusicEntry,err error){ if index <0 ||index >=len(m.musics){ return nil,errors.New("index out of range") } return &m.musics[index],nil } func (m *MusicManager) Find(t_name string) *MusicEntry{ if len(m.musics) ==0 { return nil } for _,value := range m.musics{ if value.Name == t_name{ return &value } } return nil } func (m *MusicManager) Add(music *MusicEntry){ m.musics =append(m.musics,*music) } func (m *MusicManager) Remove(index int) *MusicEntry{ if index<0 ||index >=len(m.musics){ &nb