fixed everything with JS Promises bitch! WOOOHOOO