ALERT: pageshow - not from cache
CONSOLE MESSAGE: line 70: Use of window.alert is not allowed while unloading a page.
ALERT: pageshow - from cache
This tests that layers are rebuilt properly after the page is restored from the page cache.



(GraphicsLayer
  (anchor 0.00 0.00)
  (bounds 800.00 600.00)
  (children 1
    (GraphicsLayer
      (bounds 800.00 600.00)
      (contentsOpaque 1)
      (children 4
        (GraphicsLayer
          (offsetFromRenderer width=-28 height=-28)
          (position 0.00 42.00)
          (bounds 386.00 236.00)
          (drawsContent 1)
          (children 1
            (GraphicsLayer
              (position 43.00 43.00)
              (children 1
                (GraphicsLayer
                  (anchor 0.00 0.00)
                  (bounds 285.00 135.00)
                  (children 1
                    (GraphicsLayer
                      (children 1
                        (GraphicsLayer
                          (anchor 0.00 0.00)
                          (bounds 352.00 352.00)
                          (children 1
                            (GraphicsLayer
                              (bounds 352.00 352.00)
                              (drawsContent 1)
                              (children 1
                                (GraphicsLayer
                                  (position 8.00 8.00)
                                  (bounds 202.00 202.00)
                                  (contentsOpaque 1)
                                  (drawsContent 1)
                                  (transform [0.71 0.71 0.00 0.00] [-0.71 0.71 0.00 0.00] [0.00 0.00 1.00 0.00] [100.00 100.00 0.00 1.00])
                                )
                              )
                            )
                          )
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
        (GraphicsLayer
          (position 13.00 55.00)
          (bounds 50.00 50.00)
        )
        (GraphicsLayer
          (position 8.00 274.00)
          (bounds 784.00 224.00)
          (children 1
            (GraphicsLayer
              (offsetFromRenderer width=-28 height=-28)
              (position -8.00 -8.00)
              (bounds 386.00 236.00)
              (drawsContent 1)
              (children 1
                (GraphicsLayer
                  (position 43.00 43.00)
                  (children 1
                    (GraphicsLayer
                      (anchor 0.00 0.00)
                      (bounds 285.00 135.00)
                      (children 1
                        (GraphicsLayer
                          (children 1
                            (GraphicsLayer
                              (anchor 0.00 0.00)
                              (bounds 508.00 608.00)
                              (children 1
                                (GraphicsLayer
                                  (bounds 508.00 608.00)
                                  (drawsContent 1)
                                  (children 1
                                    (GraphicsLayer
                                      (position 108.00 100.00)
                                      (bounds 200.00 200.00)
                                      (contentsOpaque 1)
                                    )
                                  )
                                )
                              )
                            )
                          )
                        )
                      )
                    )
                  )
                )
              )
            )
          )
        )
        (GraphicsLayer
          (position 13.00 279.00)
          (bounds 50.00 50.00)
        )
      )
    )
  )
)

