works again
uses variation of queue
uses less ram and docent get memory warning anymore