code: func ExpandedVariables(body hcl.Body, schema *configschema.Block) []hcl.Traversal {
  	rootNode := dynblock.WalkVariables(body)
  	return walkVariables(rootNode, body, schema)
  }
docs: // ExpandedVariables finds all of the global variables referenced in the
  // given body with the given schema while taking into account the possibilities
  // both of "dynamic" blocks being expanded and the possibility of certain
  // attributes being written instead as nested blocks as allowed by the
  // FixUpBlockAttrs function.
  //
  // This function exists to allow variables to be analyzed prior to dynamic
  // block expansion while also dealing with the fact that dynamic block expansion
  // might in turn produce nested blocks that are subject to FixUpBlockAttrs.
  //
  // This is intended as a drop-in replacement for dynblock.VariablesHCLDec,
  // which is itself a drop-in replacement for hcldec.Variables.