---
merged:
  before:
    - name: GigabitEthernet0/0
    - name: GigabitEthernet2
    - name: GigabitEthernet3
  commands:
    - interface GigabitEthernet2
    - switchport access vlan 30
    - switchport voice vlan 40
    - interface GigabitEthernet3
    - switchport trunk encapsulation dot1q
    - switchport trunk native vlan 20
    - switchport trunk allowed vlan 15-20,40
    - switchport trunk pruning vlan 10,20
    - switchport mode trunk
  after:
    - name: GigabitEthernet0/0
    - access:
        vlan: 30
      voice:
        vlan: 40
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 15-20
          - "40"
        encapsulation: dot1q
        native_vlan: 20
        pruning_vlans:
          - "10"
          - "20"
merged_again:
  commands:
    - interface GigabitEthernet3
    - switchport trunk allowed vlan 200,15-20,40
    - switchport trunk pruning vlan 40-60,10,20
  after:
    - name: GigabitEthernet0/0
    - access:
        vlan: 30
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 15-20
          - "40"
          - "200"
        encapsulation: dot1q
        native_vlan: 20
        pruning_vlans:
          - "10"
          - "20"
          - 40-60
replaced:
  before:
    - name: GigabitEthernet0/0
    - access:
        vlan: 10
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 10-20
          - "40"
        encapsulation: dot1q
        native_vlan: 10
        pruning_vlans:
          - "10"
          - "20"
  commands:
    - interface GigabitEthernet2
    - switchport access vlan 40
    - switchport voice vlan 20
    - interface GigabitEthernet3
    - no switchport mode
    - no switchport trunk allowed vlan
    - switchport trunk native vlan 20
    - switchport trunk pruning vlan 10-20,30
  after:
    - name: GigabitEthernet0/0
    - access:
        vlan: 40
      name: GigabitEthernet2
      voice:
        vlan: 20
    - name: GigabitEthernet3
      trunk:
        encapsulation: dot1q
        native_vlan: 20
        pruning_vlans:
          - 10-20
          - "30"
overridden:
  before:
    - name: GigabitEthernet0/0
    - access:
        vlan: 10
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 10-20
          - "40"
        encapsulation: dot1q
        native_vlan: 10
        pruning_vlans:
          - "10"
          - "20"
  commands:
    - interface GigabitEthernet2
    - no switchport access vlan
    - interface GigabitEthernet3
    - no switchport mode
    - no switchport trunk pruning vlan
    - switchport trunk encapsulation isl
    - switchport trunk native vlan 30
    - switchport trunk allowed vlan 30-35,40
  after:
    - name: GigabitEthernet0/0
    - name: GigabitEthernet2
    - name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 30-35
          - "40"
        encapsulation: isl
        native_vlan: 30
deleted:
  before:
    - name: GigabitEthernet0/0
    - access:
        vlan: 10
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - 10-20
          - "40"
        encapsulation: dot1q
        native_vlan: 10
        pruning_vlans:
          - "10"
          - "20"
  commands:
    - interface GigabitEthernet2
    - no switchport access vlan
    - interface GigabitEthernet3
    - no switchport mode
    - no switchport trunk encapsulation
    - no switchport trunk native vlan
    - no switchport trunk allowed vlan
    - no switchport trunk pruning vlan
  after:
    - name: GigabitEthernet0/0
    - name: GigabitEthernet2
    - name: GigabitEthernet3
gathered:
  config:
    - access:
        vlan: 30
      name: GigabitEthernet2
    - mode: trunk
      name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - "10-20"
          - "40"
        encapsulation: dot1q
        native_vlan: 10
        pruning_vlans:
          - "10"
          - "20"
parsed:
  config:
    - access:
        vlan: 30
      mode: access
      name: GigabitEthernet2
    - name: GigabitEthernet3
      trunk:
        allowed_vlans:
          - "15-20"
          - "40"
        encapsulation: dot1q
        native_vlan: 20
        pruning_vlans:
          - "10"
          - "20"
rendered:
  commands:
    - interface GigabitEthernet2
    - switchport access vlan 30
    - interface GigabitEthernet3
    - switchport trunk encapsulation dot1q
    - switchport trunk native vlan 20
    - switchport trunk allowed vlan 10-20,40
    - switchport trunk pruning vlan 10,20
rtt:
  commands:
    - interface GigabitEthernet2
    - switchport access vlan 30
    - interface GigabitEthernet3
    - switchport trunk encapsulation dot1q
    - switchport trunk native vlan 20
    - switchport trunk allowed vlan 15-20,40
    - switchport trunk pruning vlan 10,20
