Many vlan lines on bridge. Does it matter ?

I use ansible to config my ROS 7.11.2 switch. I want to have some trunks and bonds with several tagged vlans. Also some access ports with an untagged vlan.
In my script I add every vlan apart to a port/bond. Example:

/interface/bridge/vlan add bridge=bridge untagged=ether2 vlan-ids=10
/interface/bridge/vlan add bridge=bridge untagged=ether3 vlan-ids=10
/interface/bridge/vlan add bridge=bridge untagged=ether4 vlan-ids=10
/interface/bridge/vlan add bridge=bridge tagged=ether4 vlan-ids=11
/interface/bridge/vlan add bridge=bridge tagged=ether4 vlan-ids=12

The consequence of this, that there are many lines in “/interface/bridge/vlan/print”. For every vlan, per interface on the bridge.
There will be some equal lines eg:

14 bridge 10
15 bridge 10
16 bridge 10

Every line is for an other interface. The print does not show it, but in winbox you can see it.
If I was a human user, I would aggregate it, like:
/interface/bridge/vlan add bridge=bridge untagged=ether1,ether2,ether3 vlan-ids=10
In a program, it is easier to do it like above.
Does this matter ? Does ROS aggregated the requested config into an internal tabel/config ?

um…

/interface/bridge/vlan
export

talk about it?

As you know: Syntax allows for multiple ports and multiple VLAN ids

like:

add bridge=bridge tagged=bridge untagged=ether2,ether3,ether4 vlan-ids=10
add bridge=bridge1 tagged=ether1 untagged=ether2,ether3 vlan-ids=20,30

‘export’ will resemble input (but may be different order)
print has it’s own format of bringing the same information

For example
Function

:global setiflist do={
    :local strout ""
    :local fprsnt 0
    :if ($1 = "add") do={
        :for i from=0 to=([:len $2] - 1) do={
           :local iface [:pick $2 $i]
           :if ($iface = $3) do={:set fprsnt 1}
           :set strout ($strout . $iface . ",")
        }
        :if ($fprsnt = 0) do={
            :set strout ($strout . $3)
        } else {
            :set strout [:pick $strout 0 ([:len $strout]-1)]
        }
    } 
    :if ($1 = "remove") do={
        :for i from=0 to=([:len $2] - 1) do={
           :local iface [:pick $2 $i]
           :if ($iface != $3) do={:set strout ($strout . $iface . ",")}
        }
        :set strout [:pick $strout 0 ([:len $strout]-1)]
    } 
    :return $strout
}

usage

/interface/bridge/vlan/ set tagged=([$setiflist add ([get value-name=tagged number=[find bridge=LAN && vlan-ids=90]]) ether2]) numbers=[find bridge=LAN && vlan-ids=90]
/interface/bridge/vlan/ set tagged=([$setiflist remove ([get value-name=tagged number=[find bridge=LAN && vlan-ids=90]]) ether2]) numbers=[find bridge=LAN && vlan-ids=90]

>

strange, in Firefox 2 blocks (code) in one post look bad
added a quote to the 2nd block