How can I take a message from the queue (making it unavailable to others) and “return” it to the ORIGINAL POSITION (which should be the first position) of queue in case of failure to process it OR remove it indefinitely in case of successful processing?