implemented first draft cut for multiple version support