
(Frame scrolling node
  (scrollable area size 800 600)
  (contents size 800 1016)
  (scrollable area parameters 
    (horizontal scroll elasticity 1)
    (vertical scroll elasticity 1)
    (horizontal scrollbar mode 0)
    (vertical scrollbar mode 0))
  (layout viewport at (0,0) size 800x600)
  (min layout viewport origin (0,0))
  (max layout viewport origin (0,416))
  (behavior for fixed 0)
  (children 1
    (Frame hosting node
      (children 1
        (Frame scrolling node
          (scrollable area size 500 300)
          (contents size 500 420)
          (scrollable area parameters 
            (horizontal scroll elasticity 1)
            (vertical scroll elasticity 1)
            (horizontal scrollbar mode 1)
            (vertical scrollbar mode 1))
          (layout viewport at (0,0) size 500x300)
          (min layout viewport origin (0,0))
          (max layout viewport origin (0,120))
          (behavior for fixed 0)
          (children 2
            (Overflow scrolling node
              (scrollable area size 400 300)
              (contents size 400 1760)
              (scrollable area parameters 
                (horizontal scroll elasticity 1)
                (vertical scroll elasticity 1)
                (horizontal scrollbar mode 0)
                (vertical scrollbar mode 0)
                (has enabled vertical scrollbar 1))
              (children 1
                (Sticky node
                  (anchor edges: AnchorEdgeTop AnchorEdgeBottom)
                  (top offset 10.00)
                  (bottom offset 10.00)
                  (containing block rect at (2,2) size 400x1760)
                  (sticky box rect at (0,830) size 100x100)
                  (constraining rect at (0,0) size 400x300)
                  (sticky offset at last layout width=0 height=-640)
                  (layer position at last layout (0,190))
                )
              )
            )
            (Sticky node
              (anchor edges: AnchorEdgeTop AnchorEdgeBottom)
              (top offset 10.00)
              (bottom offset 10.00)
              (containing block rect at (8,8) size 484x404)
              (sticky box rect at (8,312) size 100x100)
              (constraining rect at (0,0) size 500x300)
              (sticky offset at last layout width=0 height=-122)
              (layer position at last layout (8,190))
            )
          )
        )
      )
    )
  )
)

