started rewriting standard library