#! /usr/lib/veetest/veetest -r
(revision "A.00.01")
(date "Thu 26/Mar/1992")
(component 0 "Context"
 (implementation
  (component 0 "Context"
   (name "Pie Chart")
   (description 62 4
    This User Object converts an input array into
    a pie chart with up to 8 slices.  Each array
    element is converted to a slice proportional
    to the ratio of the element to the sum of all
    elements.  Only the first eight elements are
    represented by uniquely colored slices; any
    additional elements are represented by a empty
    slice.
    
    Since the "Pie Chart" object is built from 
    objects encapsulated within a User Object, you
    will probably want to customize the Trace 
    names and colors by clicking over the piechart
    with the left mouse button, then selecting the
    Traces & Scales sub-menu.  Unused Trace input
    terminals can be deleted, but you must also
    modify the "RangeCalc" formula to reflect the max
    number of input elements to process.  Also, each
    unused Arc[] formula should be deleted to avoid
    accessing nonexistent array elements.  Finally,
    you will probably want to Secure the User Object
    to prevent the end-user from modifying these
    settings.
    
    HOW IT WORKS:
    
    First, the input data must be "stretched" into an
    array that is at least 8 elements long using a
    concat() function to add some Zero data.
    
    Next, the RangeCalc formula normalizes the input
    array so that each element represents the number
    of degrees out of 360 total.
    
    Third, an array of angles 2 degrees apart is
    generated in the Arc[] formulas.  A test must
    be made to insure that at least 2 points are
    produced.  Each Arc[] produces the array starting
    at the sum of the angles of preceeding slices,
    and ending at the sum of angles including the
    slice.  Thus, each Arc[] formula specifies the
    summing ranges needed to generate the arc data.
    
    Fourth, each array of angles is converted into
    an array of Polar Complex numbers with a radius
    of 1.  This represents an arc 1 unit from the
    origin.  If this were plotted on a Polar display,
    it would draw an arc proportional to the slice
    size.  
    
    In order to "fill" the slice with a solid color,
    the display "Traces & Scales" menu is used to
    set the Line Type to "Solid Fill".  This mode on
    an XY (cartesian) display causes a solid bar to
    be generated from each line segment to the X axis.
    On a polar display, it generates a solid pattern
    from the arc to the origin point at (0,0).
    
    
    
    
    
   )
   (interface
    (sequence in)
    (sequence out)
    (input 1
     (type data)
     (name "A")
     (optional yes)
    )
   )
   (implementation
    (locked no)
    (trigMode deg)
    (component 0 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 377 168)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 1 "Constant"
     (name "1")
     (subType "Real")
     (interface
      (sequence in)
      (sequence out)
      (output 1
       (type data)
       (name "Real")
       (lock name constraints)
      )
     )
     (implementation
      (component value Real
       (name "1")
       (datum 1)
      )
      (component autoTrigger off)
      (component initializeAtPrerun off)
      (component initializeAtActivate off)
      (component initValue Real
       (datum 0)
      )
     )
     (views
      (icon
       (origin 247 138)
       (extent 46 25)
      )
      (detail
       (origin 390 184)
       (extent 120 32)
       (showFormat real)
      )
      (active icon)
     )
    )
    (component 2 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 208)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 3 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 168)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 4 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 208)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 5 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 248)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 6 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 248)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 7 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 288)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 8 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 288)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 9 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 328)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 10 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 328)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 11 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 368)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 12 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 368)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 13 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 408)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 14 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 408)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 15 "ToSpectrum"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Array")
       (tag "Array")
       (requires
        (datatype PComplex)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "Spectrum")
       (tag "Spectrum")
       (lock name constraints)
      )
     )
     (implementation
      (component freqMode "Start/Stop Freq")
      (component start 0)
      (component stop 1000)
      (component xMapping Linear)
     )
     (views
      (icon
       (origin 532 448)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 16 "ToPComplex"
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Mag")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (input 2
       (type data)
       (name "Phase")
       (requires
        (datatype Real)
       )
       (lock name constraints)
      )
      (output 1
       (type data)
       (name "PComplex")
       (lock name constraints)
      )
     )
     (implementation
     )
     (views
      (icon
       (origin 372 448)
       (extent 136 25)
      )
      (detail
      )
      (terminals on)
      (active icon)
     )
    )
    (component 17 "YPlot"
     (name "Magnitude vs Phase")
     (subType "Mag_vs_Phase")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "Trace1")
       (lock constraints)
      )
      (input 2
       (type data)
       (name "Trace2")
       (lock constraints)
       (optional yes)
      )
      (input 3
       (type data)
       (name "Trace3")
       (lock constraints)
       (optional yes)
      )
      (input 4
       (type data)
       (name "Trace4")
       (lock constraints)
       (optional yes)
      )
      (input 5
       (type data)
       (name "Trace5")
       (lock constraints)
       (optional yes)
      )
      (input 6
       (type data)
       (name "Trace6")
       (lock constraints)
       (optional yes)
      )
      (input 7
       (type data)
       (name "Trace7")
       (lock constraints)
       (optional yes)
      )
      (input 8
       (type data)
       (name "Trace8")
       (lock constraints)
       (optional yes)
      )
     )
     (implementation
      (component clearAtPrerun 1)
      (component clearAtActivate 1)
      (component tracePin 1)
      (component tracePin 2)
      (component tracePin 3)
      (component tracePin 4)
      (component tracePin 5)
      (component tracePin 6)
      (component tracePin 7)
      (component tracePin 8)
      (component graphMode phasemag)
     )
     (views
      (icon
       (iconImage "display.icon")
      )
      (detail
       (origin 701 144)
       (extent 339 352)
       (displayMode graphOnly)
       (graphType polar)
       (gridType off)
       (scale 0
        (name "Mag")
        (pen 9)
        (show 1)
        (vspan 2.078078078078078)
       )
       (trace 0 onScale 0
        (name "Trace1")
        (pen 4)
        (lineType 1)
        (pointType 6)
       )
       (trace 1 onScale 0
        (name "Trace2")
        (pen 7)
        (lineType 1)
        (pointType 6)
       )
       (trace 2 onScale 0
        (name "Trace3")
        (pen 6)
        (lineType 1)
        (pointType 6)
       )
       (trace 3 onScale 0
        (name "Trace4")
        (pen 3)
        (lineType 1)
        (pointType 6)
       )
       (trace 4 onScale 0
        (name "Trace5")
        (pen 2)
        (lineType 1)
        (pointType 6)
       )
       (trace 5 onScale 0
        (name "Trace6")
        (pen 5)
        (lineType 1)
        (pointType 6)
       )
       (trace 6 onScale 0
        (name "Trace7")
        (pen 8)
        (lineType 1)
        (pointType 6)
       )
       (trace 7 onScale 0
        (name "Trace8")
        (pen 1)
        (lineType 1)
        (pointType 6)
       )
      )
      (active detail)
     )
    )
    (component 18 "Formula"
     (name "Arc[0]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[0]/2 2]),0,a[0])")
     )
     (views
      (icon
       (origin 231 178)
       (extent 78 25)
      )
      (detail
       (origin 222 190)
       (extent 286 41)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 19 "Formula"
     (name "Arc[2]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[2]/2 2]),sum(a[0:1]),sum(a[0:2]))")
     )
     (views
      (icon
       (origin 231 258)
       (extent 78 25)
      )
      (detail
       (origin 216 271)
       (extent 439 38)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 20 "Formula"
     (name "Arc[3]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[3]/2 2]),sum(a[0:2]),sum(a[0:3]))")
     )
     (views
      (icon
       (origin 231 298)
       (extent 78 25)
      )
      (detail
       (origin 216 313)
       (extent 439 34)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 21 "Formula"
     (name "Arc[4]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[4]/2 2]),sum(a[0:3]),sum(a[0:4]))")
     )
     (views
      (icon
       (origin 231 338)
       (extent 78 25)
      )
      (detail
       (origin 216 351)
       (extent 439 39)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 22 "Formula"
     (name "Arc[5]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[5]/2 2]),sum(a[0:4]),sum(a[0:5]))")
     )
     (views
      (icon
       (origin 231 378)
       (extent 78 25)
      )
      (detail
       (origin 216 392)
       (extent 439 37)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 23 "Formula"
     (name "Arc[6]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[6]/2 2]),sum(a[0:5]),sum(a[0:6]))")
     )
     (views
      (icon
       (origin 231 418)
       (extent 78 25)
      )
      (detail
       (origin 216 431)
       (extent 439 38)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 24 "Formula"
     (name "Arc[7]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[7]/2 2]),sum(a[0:6]),sum(a[0:7]))")
     )
     (views
      (icon
       (origin 231 458)
       (extent 78 25)
      )
      (detail
       (origin 216 471)
       (extent 439 38)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 25 "Formula"
     (name "Stretch")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "concat(a,[0 0 0 0 0 0 0])")
     )
     (views
      (icon
       (origin 101 308)
       (extent 78 25)
      )
      (detail
       (origin 191 333)
       (extent 259 35)
      )
      (active icon)
     )
    )
    (component 26 "Formula"
     (name "Arc[1]")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "ramp(max([a[1]/2 2]),a[0],a[0]+a[1])")
     )
     (views
      (icon
       (origin 231 218)
       (extent 78 25)
      )
      (detail
       (origin 206 231)
       (extent 358 38)
      )
      (terminals on)
      (active icon)
     )
    )
    (component 27 "Formula"
     (name "RangeCalc")
     (interface
      (sequence in)
      (sequence out)
      (input 1
       (type data)
       (name "A")
       (optional yes)
      )
      (output 1
       (type data)
       (name "Result")
       (lock name constraints)
      )
     )
     (implementation
      (component isLocked no)
      (component expr 1 "a[0:7]/sum(a)*360")
     )
     (views
      (icon
       (origin 85 178)
       (extent 110 25)
      )
      (detail
       (origin 54 193)
       (extent 232 35)
      )
      (active icon)
     )
    )
    (configuration
     (connect D1:1 D0:1)
     (connect D18:1 D0:2)
     (connect D1:1 D2:1)
     (connect D26:1 D2:2)
     (connect D0:1 D3:1)
     (connect D2:1 D4:1)
     (connect D1:1 D5:1)
     (connect D19:1 D5:2)
     (connect D5:1 D6:1)
     (connect D8:1 D7:1)
     (connect D1:1 D8:1)
     (connect D20:1 D8:2)
     (connect D10:1 D9:1)
     (connect D1:1 D10:1)
     (connect D21:1 D10:2)
     (connect D1:1 D11:1)
     (connect D22:1 D11:2)
     (connect D11:1 D12:1)
     (connect D14:1 D13:1)
     (connect D1:1 D14:1)
     (connect D23:1 D14:2)
     (connect D16:1 D15:1)
     (connect D1:1 D16:1)
     (connect D24:1 D16:2)
     (connect D3:1 D17:1)
     (connect D4:1 D17:2)
     (connect D6:1 D17:3)
     (connect D7:1 D17:4)
     (connect D9:1 D17:5)
     (connect D12:1 D17:6)
     (connect D13:1 D17:7)
     (connect D15:1 D17:8)
     (connect D27:1 D18:1)
     (connect D27:1 D19:1)
     (connect D27:1 D20:1)
     (connect D27:1 D21:1)
     (connect D27:1 D22:1)
     (connect D27:1 D23:1)
     (connect D27:1 D24:1)
     (connect I1:1 D25:1)
     (connect D27:1 D26:1)
     (connect D25:1 D27:1)
    )
   )
   (views
    (icon
     (extent 110 0)
    )
    (panel
     (origin 284 145)
     (extent 372 350)
     (widget 17 detail
      (title off)
      (origin 289 150)
      (extent 363 340)
      (displayMode annotGraph)
      (graphType polar)
      (gridType off)
      (scale 0
       (name "Mag")
       (pen 9)
       (show 1)
       (vspan 2.185483870967742)
      )
      (trace 0 onScale 0
       (name "Trace1")
       (pen 2)
       (lineType 1)
       (pointType 6)
      )
      (trace 1 onScale 0
       (name "Trace2")
       (pen 7)
       (lineType 1)
       (pointType 6)
      )
      (trace 2 onScale 0
       (name "Trace3")
       (pen 4)
       (lineType 1)
       (pointType 6)
      )
      (trace 3 onScale 0
       (name "Trace4")
       (pen 3)
       (lineType 1)
       (pointType 6)
      )
      (trace 4 onScale 0
       (name "Trace5")
       (pen 6)
       (lineType 1)
       (pointType 6)
      )
      (trace 5 onScale 0
       (name "Trace6")
       (pen 5)
       (lineType 1)
       (pointType 6)
      )
      (trace 6 onScale 0
       (name "Trace7")
       (pen 8)
       (lineType 1)
       (pointType 6)
      )
      (trace 7 onScale 0
       (name "Trace8")
       (pen 1)
       (lineType 1)
       (pointType 6)
      )
     )
    )
    (detail
     (origin 58 110)
     (extent 804 400)
     (configuration
      (connect D1:1 D0:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 374 170)
      )
      (connect D18:1 D0:2
       (Point 311 190)
       (Point 374 190)
      )
      (connect D1:1 D2:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 210)
       (Point 369 210)
      )
      (connect D26:1 D2:2
       (Point 311 230)
       (Point 369 230)
      )
      (connect D0:1 D3:1
       (Point 515 180)
       (Point 529 180)
      )
      (connect D2:1 D4:1
       (Point 510 220)
       (Point 529 220)
      )
      (connect D1:1 D5:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 250)
       (Point 369 250)
      )
      (connect D19:1 D5:2
       (Point 311 270)
       (Point 369 270)
      )
      (connect D5:1 D6:1
       (Point 510 260)
       (Point 529 260)
      )
      (connect D8:1 D7:1
       (Point 510 300)
       (Point 529 300)
      )
      (connect D1:1 D8:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 290)
       (Point 369 290)
      )
      (connect D20:1 D8:2
       (Point 311 310)
       (Point 369 310)
      )
      (connect D10:1 D9:1
       (Point 510 340)
       (Point 529 340)
      )
      (connect D1:1 D10:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 330)
       (Point 369 330)
      )
      (connect D21:1 D10:2
       (Point 311 350)
       (Point 369 350)
      )
      (connect D1:1 D11:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 370)
       (Point 369 370)
      )
      (connect D22:1 D11:2
       (Point 311 390)
       (Point 369 390)
      )
      (connect D11:1 D12:1
       (Point 510 380)
       (Point 529 380)
      )
      (connect D14:1 D13:1
       (Point 510 420)
       (Point 529 420)
      )
      (connect D1:1 D14:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 410)
       (Point 369 410)
      )
      (connect D23:1 D14:2
       (Point 311 430)
       (Point 369 430)
      )
      (connect D16:1 D15:1
       (Point 510 460)
       (Point 529 460)
      )
      (connect D1:1 D16:1
       (Point 295 150)
       (Point 330 150)
       (Point 330 170)
       (Point 340 170)
       (Point 340 450)
       (Point 369 450)
      )
      (connect D24:1 D16:2
       (Point 311 470)
       (Point 369 470)
      )
      (connect D3:1 D17:1
       (Point 670 180)
       (Point 698 180)
      )
      (connect D4:1 D17:2
       (Point 670 220)
       (Point 698 220)
      )
      (connect D6:1 D17:3
       (Point 670 260)
       (Point 698 260)
      )
      (connect D7:1 D17:4
       (Point 670 300)
       (Point 698 300)
      )
      (connect D9:1 D17:5
       (Point 670 340)
       (Point 698 340)
      )
      (connect D12:1 D17:6
       (Point 670 380)
       (Point 698 380)
      )
      (connect D13:1 D17:7
       (Point 670 420)
       (Point 698 420)
      )
      (connect D15:1 D17:8
       (Point 670 460)
       (Point 698 460)
      )
      (connect D27:1 D18:1
       (Point 197 190)
       (Point 212 190)
       (Point 212 190)
       (Point 228 190)
      )
      (connect D27:1 D19:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 270)
       (Point 228 270)
      )
      (connect D27:1 D20:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 310)
       (Point 228 310)
      )
      (connect D27:1 D21:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 350)
       (Point 228 350)
      )
      (connect D27:1 D22:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 390)
       (Point 228 390)
      )
      (connect D27:1 D23:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 430)
       (Point 228 430)
      )
      (connect D27:1 D24:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 470)
       (Point 228 470)
      )
      (connect I1:1 D25:1
       (Point 60 320)
       (Point 71 320)
       (Point 71 320)
       (Point 98 320)
      )
      (connect D27:1 D26:1
       (Point 197 190)
       (Point 210 190)
       (Point 210 230)
       (Point 228 230)
      )
      (connect D25:1 D27:1
       (Point 181 320)
       (Point 200 320)
       (Point 200 290)
       (Point 70 290)
       (Point 70 190)
       (Point 82 190)
      )
     )
    )
    (active panel)
    (active panel)
   )
  )
  (configuration
  )
 )
 (views
  (detail
   (configuration
   )
  )
 )
)
