query initData {
  ...mainMenuQuery
  ...footerQuery
  ...globalConfigQuery
}

fragment mainMenuQuery on Query {
  mainMenu: menuByName(name: MAIN) {
    links {
      ...menuLinkTreeElementFirst
    }
  }
}

fragment footerQuery on Query {
  footerMenu: menuByName(name: FOOTER) {
    links {
      ...menuLinkTreeElementFirst
    }
  }
  footerSocialMedia: menuByName(name: FOOTER_SOCIAL_MEDIA) {
    links {
      ...menuLinkTree
    }
  }
}

fragment menuLinkTreeElementFirst on MenuLinkTreeElement {
  ...menuLinkTree
  subtree {
    ...menuLinkTree
    subtree {
      ...menuLinkTree
    }
  }
}

fragment menuLinkTree on MenuLinkTreeElement {
  link {
    url {
      path
    }
    attribute(name: "target")
    label
  }
}

fragment globalConfigQuery on Query {
  globalConfig {
    ...globalConfig
  }
}

fragment globalConfig on TranslatableConfigPagesGlobal {
  address: fieldAddress {
    locality
    postalCode
    addressLine1
    addressLine2
    organization
  }
}
