numerous code updates