working on the default implementations (uses string parsing without optimization)