(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 800.00 600.00)
  (paintingPhases
    GraphicsLayerPaintBackground
    GraphicsLayerPaintForeground
    )
  (children 1
    (GraphicsLayer
      (bounds 800.00 600.00)
      (contentsOpaque 1)
      (paintingPhases
        GraphicsLayerPaintBackground
        GraphicsLayerPaintForeground
        )
      (children 1
        (GraphicsLayer
          (position 28.00 20.00)
          (bounds 202.00 202.00)
          (drawsContent 1)
          (paintingPhases
            GraphicsLayerPaintBackground
            GraphicsLayerPaintCompositedScroll
            )
          (children 4
            (GraphicsLayer
              (offsetFromRenderer width=-1 height=-1)
              (position 1.00 1.00)
              (bounds 185.00 185.00)
              (paintingPhases
                GraphicsLayerPaintBackground
                GraphicsLayerPaintForeground
                )
              (children 1
                (GraphicsLayer
                  (offsetFromRenderer width=1 height=1)
                  (bounds 185.00 715.00)
                  (drawsContent 1)
                  (paintingPhases
                    GraphicsLayerPaintOverflowContents
                    GraphicsLayerPaintCompositedScroll
                    )
                  (children 2
                    (GraphicsLayer
                      (position 0.00 10.00)
                      (bounds 80.00 10.00)
                      (contentsOpaque 1)
                      (paintingPhases
                        GraphicsLayerPaintBackground
                        GraphicsLayerPaintForeground
                        )
                    )
                    (GraphicsLayer
                      (offsetFromRenderer width=1 height=1)
                      (bounds 185.00 715.00)
                      (drawsContent 1)
                      (paintingPhases
                        GraphicsLayerPaintForeground
                        )
                    )
                  )
                )
              )
            )
            (GraphicsLayer
              (position 1.00 186.00)
              (bounds 185.00 15.00)
              (drawsContent 1)
              (paintingPhases
                GraphicsLayerPaintBackground
                GraphicsLayerPaintForeground
                )
            )
            (GraphicsLayer
              (position 186.00 1.00)
              (bounds 15.00 185.00)
              (drawsContent 1)
              (paintingPhases
                GraphicsLayerPaintBackground
                GraphicsLayerPaintForeground
                )
            )
            (GraphicsLayer
              (position 186.00 186.00)
              (bounds 15.00 15.00)
              (drawsContent 1)
              (paintingPhases
                GraphicsLayerPaintBackground
                GraphicsLayerPaintForeground
                )
            )
          )
        )
      )
    )
  )
)


