(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 785.00 669.00)
  (visible rect 0.00, 0.00 785.00 x 600.00)
  (coverage rect 0.00, 0.00 785.00 x 600.00)
  (intersects coverage rect 1)
  (contentsScale 1.00)
  (children 1
    (GraphicsLayer
      (bounds 785.00 669.00)
      (contentsOpaque 1)
      (visible rect 0.00, 0.00 785.00 x 600.00)
      (coverage rect 0.00, 0.00 785.00 x 600.00)
      (intersects coverage rect 1)
      (contentsScale 1.00)
      (children 2
        (GraphicsLayer
          (position 18.00 10.00)
          (bounds 304.00 304.00)
          (visible rect 0.00, 0.00 304.00 x 304.00)
          (coverage rect -18.00, -10.00 785.00 x 600.00)
          (intersects coverage rect 1)
          (contentsScale 1.00)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=2 height=2)
              (position 2.00 2.00)
              (bounds 300.00 300.00)
              (childrenTransform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.26 0.26 1.00 -0.00] [0.00 0.00 0.00 1.00])
              (visible rect 0.00, 0.00 300.00 x 300.00)
              (coverage rect 0.00, 0.00 300.00 x 300.00)
              (intersects coverage rect 1)
              (contentsScale 1.00)
              (children 1
                (GraphicsLayer
                  (bounds 300.00 0.00)
                  (preserves3D 1)
                  (transform [0.94 0.00 -0.34 0.00] [0.00 1.00 0.00 0.00] [0.34 0.00 0.94 0.00] [0.00 0.00 0.00 1.00])
                  (visible rect 0.00, 0.00 0.00 x 0.00)
                  (coverage rect -2.95, -8.50 360.07 x 353.13)
                  (intersects coverage rect 0)
                  (contentsScale 1.00)
                  (children 1
                    (GraphicsLayer
                      (bounds 300.00 0.00)
                      (preserves3D 1)
                      (transform [0.94 0.00 -0.34 0.00] [0.00 1.00 0.00 0.00] [0.34 0.00 0.94 0.00] [0.00 0.00 0.00 1.00])
                      (visible rect 0.00, 0.00 0.00 x 0.00)
                      (coverage rect -27.90, -32.04 593.31 x 500.27)
                      (intersects coverage rect 0)
                      (contentsScale 1.00)
                      (children 1
                        (GraphicsLayer
                          (bounds 500.00 500.00)
                          (contentsOpaque 1)
                          (transform [1.00 0.00 0.00 0.00] [0.00 0.82 0.57 0.00] [0.00 -0.57 0.82 0.00] [0.00 0.00 0.00 1.00])
                          (visible rect 0.00, 0.00 500.00 x 369.91)
                          (coverage rect -21.28, -198.73 1388.86 x 568.64)
                          (intersects coverage rect 1)
                          (contentsScale 1.00)
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
        (GraphicsLayer
          (position 18.00 324.00)
          (bounds 304.00 304.00)
          (visible rect 0.00, 0.00 304.00 x 276.00)
          (coverage rect -18.00, -324.00 785.00 x 600.00)
          (intersects coverage rect 1)
          (contentsScale 1.00)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=2 height=2)
              (position 2.00 2.00)
              (bounds 300.00 300.00)
              (childrenTransform [1.00 0.00 0.00 0.00] [0.00 1.00 0.00 0.00] [0.26 0.26 1.00 -0.00] [0.00 0.00 0.00 1.00])
              (visible rect 0.00, 0.00 300.00 x 274.00)
              (coverage rect 0.00, 0.00 300.00 x 274.00)
              (intersects coverage rect 1)
              (contentsScale 1.00)
              (children 1
                (GraphicsLayer
                  (bounds 300.00 0.00)
                  (preserves3D 1)
                  (visible rect 0.00, 0.00 0.00 x 0.00)
                  (coverage rect 0.00, 0.00 300.00 x 274.00)
                  (intersects coverage rect 0)
                  (contentsScale 1.00)
                  (children 1
                    (GraphicsLayer
                      (bounds 300.00 0.00)
                      (preserves3D 1)
                      (transform [0.77 0.00 -0.64 0.00] [0.00 1.00 0.00 0.00] [0.64 0.00 0.77 0.00] [0.00 0.00 0.00 1.00])
                      (visible rect 0.00, 0.00 0.00 x 0.00)
                      (coverage rect -27.90, -32.04 593.31 x 456.91)
                      (intersects coverage rect 0)
                      (contentsScale 1.00)
                      (children 1
                        (GraphicsLayer
                          (bounds 500.00 500.00)
                          (contentsOpaque 1)
                          (transform [1.00 0.00 0.00 0.00] [0.00 0.82 0.57 0.00] [0.00 -0.57 0.82 0.00] [0.00 0.00 0.00 1.00])
                          (visible rect 0.00, 0.00 500.00 x 351.87)
                          (coverage rect -15.25, -198.73 1382.84 x 550.60)
                          (intersects coverage rect 1)
                          (contentsScale 1.00)
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
      )
    )
  )
)

