(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 768.00 1004.00)
  (children 1
    (GraphicsLayer
      (bounds 768.00 1004.00)
      (contentsOpaque 1)
      (children 1
        (GraphicsLayer
          (position 8.00 8.00)
          (bounds 302.00 402.00)
          (drawsContent 1)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=-1 height=-1)
              (position 1.00 1.00)
              (bounds origin 0.00 30.00)
              (bounds 300.00 400.00)
              (children 1
                (GraphicsLayer
                  (offsetFromRenderer width=1 height=1)
                  (scrollOffset (0,30))
                  (anchor 0.00 0.00)
                  (bounds 300.00 900.00)
                  (drawsContent 1)
                  (children 1
                    (GraphicsLayer
                      (position 20.00 50.00)
                      (bounds 260.00 800.00)
                      (children 1
                        (GraphicsLayer
                          (bounds 260.00 800.00)
                          (contentsOpaque 1)
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
      )
    )
  )
)

