minor modifications: tests, implementations, etc