Added code: filled in 2 callback; refactored start function;