anchor.diff:      |> List.fold (+) ""
   
   /// Maps a command to string input for the octopus tools cli.
  -let commandLine command =       
  +let commandLine command =
       match command with
       | CreateRelease (opts, None) ->        
           sprintf " create-release%s" (releaseCommandLine opts)
  
positive.code: let optionalObjParam p o = 
      match o with
      | Some x -> sprintf " --%s=\"%s\"" p (x.ToString())
      | None -> ""     
  
  /// [omit]
  let stringListParam p os =
  
negative.code: open System
  
  /// Octo.exe server options
  type OctoServerOptions = {
      /// The base URL for your Octopus server
      Server: string
  
      /// Your API key; retrieved from the user profile page.
      ApiKey: string }
      
  /// Options for creating a new release
  type CreateReleaseOptions = {
      /// Name of the project
      Project                 : string
  
      /// Release number to use for the new release
      Version                 : string
  
      /// Default version of all packages to use for this release
      PackageVersion          : string
  
      /// Version number to use for a package in the release
      Packages                : string list
  
      /// A folder containing NuGet packages from which we should get versions
      PackagesFolder          : string option
  
      /// Release Notes for the new release
      ReleaseNotes            : string
  
      /// Path to a file that contains Release Notes for the new release
      ReleaseNotesFile        : string
  
      /// If a release with the version number already exists, ignore it
      IgnoreExisting          : bool
  
      /// Channel to use for the new release
      Channel                 : string option
  
      /// Ignore package version matching rules
      IgnoreChannelRules      : bool }
  
  /// Options for deploying a release to an environment
  type DeployReleaseOptions = {
      /// Name of the project
      Project                     : string
  
      /// Environment to deploy to
      DeployTo                    : string
  
      /// Version number of the release to deploy; Specify "latest" for
      /// the latest release
      Version                     : string
  
      /// If a project is configured to skip packages with already-installed
      /// versions, override this setting to force re-deployment
      Force                       : bool
  
      /// Whether to wait synchronously for deployment to finish
      WaitForDeployment           : bool
  
      /// Specifies maximum time that deployment can take
      /// (default: 10 minutes)
      DeploymentTimeout           : TimeSpan option
  
      /// Specifies how much time should elapse between deployment status
      /// checks (default: 10 seconds)
      DeploymentCheckSleepCycle   : TimeSpan option
  
      /// A comma-separated list of machine names to target in the
      /// deployed environment. If not specified, all machines in
      /// the environment will be considered.
      SpecificMachines            : string option }
  
  /// Options for deleting a range of releases in a project
  type DeleteReleaseOptions = {
      /// Name of the project
      Project     : string
  
      /// Minimum (inclusive) version number for the range of versions to delete
      MinVersion  : string
  
      /// Maximum (inclusive) version number for the range of versions to delete
      MaxVersion  : string }
  
  /// Option type for selecting one command
  