
(Frame scrolling node
  (scrollable area size 785 585)
  (contents size 4016 4042)
  (requested scroll position 40 460)
  (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)
  (visual viewport enabled 1)
  (layout viewport at (0,230) size 785x585)
  (min layout viewport origin (0,0))
  (max layout viewport origin (1223,1436))
  (behavior for fixed 0)
  (children 4
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeTop)
      (viewport rect at last layout at (0,230) size 785x585)
      (layer position at last layout (0,230))
    )
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeBottom)
      (viewport rect at last layout at (0,230) size 785x585)
      (layer position at last layout (0,715))
    )
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeTop)
      (viewport rect at last layout at (0,230) size 785x585)
      (layer position at last layout (0,230))
    )
    (Fixed node
      (anchor edges: AnchorEdgeRight AnchorEdgeTop)
      (viewport rect at last layout at (0,230) size 785x585)
      (layer position at last layout (685,230))
    )
  )
)
(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 230.00)
          (bounds 785.00 100.00)
          (contentsOpaque 1)
        )
        (GraphicsLayer
          (position 0.00 715.00)
          (bounds 785.00 100.00)
          (contentsOpaque 1)
        )
        (GraphicsLayer
          (position 0.00 230.00)
          (bounds 100.00 585.00)
          (contentsOpaque 1)
        )
        (GraphicsLayer
          (position 685.00 230.00)
          (bounds 100.00 585.00)
          (contentsOpaque 1)
        )
      )
    )
  )
)

