code := ` person { name = "John Doe" age = 30 location { city = "San Francisco" state = "CA" } }` obj, err := hcl.ParseString(code) if err != nil { log.Fatal(err) } personObject := obj.Object("person") name := personObject.GetAttributeValue("name") age, _ := personObject.GetAttributeValue("age").(int) locationObject := personObject.Object("location") city := locationObject.GetAttributeValue("city") state := locationObject.GetAttributeValue("state")In this example, we parse a simple HCL block and extract the values of its attributes. We use the hcl.Object to get the "person" block, then retrieve its "name" and "age" attributes. We also get the nested "location" block and retrieve its "city" and "state" attributes. Overall, the hcl.Object is a fundamental component of the hcl package, allowing developers to easily parse and manipulate HCL blocks and attributes.