Scrolled contents
(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 800.00 600.00)
  (children 1
    (GraphicsLayer
      (bounds 800.00 600.00)
      (contentsOpaque 1)
      (children 1
        (GraphicsLayer
          (position 8.00 8.00)
          (bounds 322.00 322.00)
          (drawsContent 1)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=1 height=1)
              (position 1.00 1.00)
              (bounds origin 0.00 200.00)
              (bounds 320.00 320.00)
              (children 1
                (GraphicsLayer
                  (offsetFromRenderer width=1 height=1)
                  (scrollOffset (0,200))
                  (anchor 0.00 0.00)
                  (bounds 320.00 1020.00)
                  (drawsContent 1)
                  (children 2
                    (GraphicsLayer
                      (position 30.00 50.00)
                      (bounds 102.00 102.00)
                      (contentsOpaque 1)
                      (drawsContent 1)
                    )
                    (GraphicsLayer
                      (offsetFromRenderer width=1 height=-199)
                      (bounds 320.00 1020.00)
                      (drawsContent 1)
                    )
                  )
                )
              )
            )
          )
        )
      )
    )
  )
)

