First complete draft of root! method.