(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 800.00 600.00)
  (clips 1)
  (children 1
    (GraphicsLayer
      (bounds 800.00 600.00)
      (contentsOpaque 1)
      (children 2
        (GraphicsLayer
          (offsetFromRenderer width=-10 height=-10)
          (position 18.00 10.00)
          (bounds 362.00 362.00)
          (drawsContent 1)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=13 height=13)
              (position 23.00 23.00)
              (bounds origin 0.00 50.00)
              (bounds 301.00 316.00)
              (clips 1)
              (children 1
                (GraphicsLayer
                  (offsetFromRenderer width=13 height=13)
                  (scrollOffset (0,50))
                  (anchor 0.00 0.00)
                  (bounds 301.00 640.00)
                  (drawsContent 1)
                  (children 1
                    (GraphicsLayer
                      (position 20.00 220.00)
                      (bounds 200.00 200.00)
                      (clips 1)
                      (children 1
                        (GraphicsLayer
                          (position 20.00 20.00)
                          (bounds 216.00 216.00)
                          (drawsContent 1)
                          (children 1
                            (GraphicsLayer
                              (offsetFromRenderer width=3 height=3)
                              (position 3.00 3.00)
                              (bounds origin 0.00 150.00)
                              (bounds 195.00 210.00)
                              (clips 1)
                              (children 1
                                (GraphicsLayer
                                  (offsetFromRenderer width=3 height=3)
                                  (scrollOffset (0,150))
                                  (anchor 0.00 0.00)
                                  (bounds 195.00 554.00)
                                  (drawsContent 1)
                                )
                              )
                            )
                          )
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
        (GraphicsLayer
          (position 41.00 33.00)
          (bounds origin 0.00 50.00)
          (bounds 301.00 316.00)
          (clips 1)
          (children 1
            (GraphicsLayer
              (position 20.00 220.00)
              (bounds 200.00 200.00)
              (clips 1)
              (children 1
                (GraphicsLayer
                  (position 23.00 23.00)
                  (bounds 195.00 210.00)
                  (clips 1)
                  (children 1
                    (GraphicsLayer
                      (position 2.00 202.00)
                      (bounds 191.00 150.00)
                      (clips 1)
                      (children 1
                        (GraphicsLayer
                          (offsetFromRenderer width=-6 height=-6)
                          (position 24.00 44.00)
                          (bounds 112.00 112.00)
                          (drawsContent 1)
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
      )
    )
  )
)

