
(Frame scrolling node
  (scroll position 40 1000)
  (scrollable area size 785 585)
  (contents size 4016 4042)
  (requested scroll position 40 1000)
  (requested scroll position represents programmatic scroll 1)
  (scrollable area parameters 
    (horizontal scroll elasticity 2)
    (vertical scroll elasticity 2)
    (horizontal scrollbar mode 0)
    (vertical scrollbar mode 0)
    (has enabled horizontal scrollbar 1)
    (has enabled vertical scrollbar 1))
  (frame scale factor 2.00)
  (layout viewport at (0,207.50) size 785x585)
  (min layout viewport origin (0,0))
  (max layout viewport origin (1223,1436))
  (behavior for fixed 0)
  (visual viewport smaller than layout viewport 1)
  (children 4
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeTop)
      (viewport rect at last layout at (0,207.50) size 785x585)
      (layer position at last layout (0,207))
    )
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeBottom)
      (viewport rect at last layout at (0,207.50) size 785x585)
      (layer position at last layout (0,692))
    )
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeTop)
      (viewport rect at last layout at (0,207.50) size 785x585)
      (layer position at last layout (0,207))
    )
    (Fixed node
      (anchor edges: AnchorEdgeRight AnchorEdgeTop)
      (viewport rect at last layout at (0,207.50) size 785x585)
      (layer position at last layout (685,207))
    )
  )
)
(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 4016.00 4042.00)
  (children 1
    (GraphicsLayer
      (anchor 0.00 0.00)
      (bounds 2008.00 2021.00)
      (contentsOpaque 1)
      (transform [2.00 0.00 0.00 0.00] [0.00 2.00 0.00 0.00] [0.00 0.00 1.00 0.00] [0.00 0.00 0.00 1.00])
      (children 4
        (GraphicsLayer
          (position 0.00 207.00)
          (bounds 785.00 101.00)
        )
        (GraphicsLayer
          (position 0.00 692.00)
          (bounds 785.00 101.00)
        )
        (GraphicsLayer
          (position 0.00 207.00)
          (bounds 100.00 586.00)
        )
        (GraphicsLayer
          (position 685.00 207.00)
          (bounds 100.00 586.00)
        )
      )
    )
  )
)

