@user abstract queue