add min(), max(); handle root=None