id3 reference implemetation