versioning code, first attempt