implemented back to Queue correctly