merged with latest version; compiles