
(Frame scrolling node
  (scrollable area size 785 600)
  (contents size 785 1016)
  (parent relative scrollable rect at (0,0) size 800x600)
  (scrollable area parameters 
    (horizontal scroll elasticity 2)
    (vertical scroll elasticity 2)
    (horizontal scrollbar mode 0)
    (vertical scrollbar mode 0)
    (has enabled vertical scrollbar 1))
  (layout viewport at (0,0) size 785x600)
  (min layout viewport origin (0,0))
  (max layout viewport origin (0,416))
  (synchronous event dispatch region for event wheel
    at (45,47) size 404x304)
  (behavior for fixed 0)
  (children 1
    (Fixed node
      (anchor edges: AnchorEdgeLeft AnchorEdgeTop)
      (viewport rect at last layout at (0,0) size 785x600)
      (layer position at last layout (8,10))
      (children 1
        (Frame hosting node
          (parent relative scrollable rect at (29,29) size 500x300)
          (children 1
            (Frame scrolling node
              (scrollable area size 500 300)
              (contents size 500 420)
              (parent relative scrollable rect at (0,0) size 500x300)
              (scrollable area parameters 
                (horizontal scroll elasticity 0)
                (vertical scroll elasticity 0)
                (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 1
                (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))
                )
              )
            )
          )
        )
      )
    )
  )
)

