code: func unwrapPage(in interface{}) (page.Page, error) {
  	switch v := in.(type) {
  	case *pageState:
  		return v, nil
  	case pageWrapper:
  		return v.page(), nil
  	case page.Page:
  		return v, nil
  	case nil:
  		return nil, nil
  	default:
  		return nil, errors.Errorf("unwrapPage: %T not supported", in)
  	}
  }
docs: // unwrapPage is used in equality checks and similar.