completed enqueue code; need to check if correct