added ready callbacks for better reload control