How are on_strategy_start(), on_start() and is_symbol_qualified() related to each other?

Which of these gets called first and how many times will it be called for my submission?
They are called in the following order, on_strategy_start(), is_symbol_qualified() on_start()
on_strategy_start() is called once per day for each script or trading strategy.
is_symbol_qualified() is called once per day for every symbol in the cloudquant symbol database for the then current day
on_start() is called once per day for every symbol that returned True from is_symbol_qualified()