boot() must be public