Try using promises