anchor.diff:  ----
   
   ==== Version Info With Variables
  -Since 4.0, the version strings may contain <<Variable Interpolation,system properties and environment variables>>. For example:
  -[source,java]
  +As of picocli 4.0, the version strings may contain <<Variable Interpolation,system properties and environment variables>>. For example:
  +
  +.Java
  +[source,java,role="primary"]
   ----
   @Command(version = {
       "Versioned Command 1.0",
       "Picocli " + picocli.CommandLine.VERSION,
       "JVM: ${java.version} (${java.vendor} ${java.vm.name} ${java.vm.version})",
       "OS: ${os.name} ${os.version} ${os.arch}"})
  -class VersionedCommand { ... }
  -----
  +class VersionedCommand { /* ... */ }
  +----
  +
  +.Kotlin
  +[source,kotlin,role="secondary"]
  +----
  +@Command(version = [
  +    "Versioned Command 1.0",
  +    "Picocli " + picocli.CommandLine.VERSION,
  +    "JVM: \${java.version} (\${java.vendor} \${java.vm.name} \${java.vm.version})",
  +    "OS: \${os.name} \${os.version} \${os.arch}"])
  +class VersionedCommand { /* */ }
  +----
  +
   Depending on your environment, that may print something like:
   
   ----
  
positive.code: == Version Help
  === Static Version Information
  ==== Command `version` Attribute
  Since v0.9.8, applications can specify version information in the `version` attribute of the `@Command` annotation.
  
  [source,java]
  ----
  @Command(version = "1.0")
  class VersionedCommand {
      @Option(names = { "-V", "--version" }, versionHelp = true,
              description = "print version information and exit")
      boolean versionRequested;
      ...
  ----
  
  The `CommandLine.printVersionHelp(PrintStream)` method extracts the version information from this
  annotation and prints it to the specified `PrintStream`.
  [source,java]
  ----
  CommandLine commandLine = new CommandLine(new VersionedCommand());
  commandLine.parseArgs(args);
  
negative.code: 
  For example:
  
  .Java
  [source,java,role="primary"]
  ----
  class VersionProviderWithVariables implements IVersionProvider {
      public String[] getVersion() {
          return new String[] { "${COMMAND-FULL-NAME} version 1.0" };
      }
  }
  ----
  
  .Kotlin
  [source,kotlin,role="secondary"]
  ----
  class VersionProviderWithVariables : IVersionProvider {
      override fun getVersion(): Array<String> {
          return arrayOf("\${COMMAND-FULL-NAME} version 1.0")
      }
  }
  ----
  
  The above example version provider will show the fully qualified command name (that is, preceded by its parent fully qualified command name)
  