code: func VersionDesiredLRPsTo(event Event, target format.Version) Event {
  	switch event := event.(type) {
  	case *DesiredLRPCreatedEvent:
  		return NewDesiredLRPCreatedEvent(event.DesiredLrp.VersionDownTo(target))
  	case *DesiredLRPRemovedEvent:
  		return NewDesiredLRPRemovedEvent(event.DesiredLrp.VersionDownTo(target))
  	case *DesiredLRPChangedEvent:
  		return NewDesiredLRPChangedEvent(
  			event.Before.VersionDownTo(target),
  			event.After.VersionDownTo(target),
  		)
  	default:
  		return event
  	}
  }
docs: // Downgrade the DesiredLRPEvent payload (i.e. DesiredLRP(s)) to the given
  // target version