All works no bugs. Just need to sort of the schedual async and then CLEAN