the media player queue is made up of nodes when track is added to the queuethe track is hidden in newly created node and associated with the data attribute of the node that explains why we access node' track object through the data property of the node which is returned by the call to dequeueyou can seeinstead of our node object just storing just any datait stores tracks in this case let' take our music player for spintrack track("white whistle"track track("butter butter"track track("oh black star"track track("watch that chicken"track track("don' go"we create five track objects with random words as titlesprint(track lengthprint(track length> > the output should be different from what you get on your machine due to the random length nextan instance of the mediaplayerqueue class is createdmedia_player mediaplayerqueue(