What I'd like to do is pass in a hash of hashes that looks something like this:

```
input = {
    "configVersion" => "someVers",
    "box" => 
    {
        "primary"  => {
            "ip" => "192.168.1.1", 
            "host" => "something"
            },
        "api" => {
            "live" => "livekey", 
            "test" => "testkey"
            }
    }
}

```

then iterate over it, continuing if the value is another hash, and generating output with it. The result should be something like this:

```
configVersion = "someVers"
box.primary.ip = "192.168.1.1"
box.primary.host = "something"

```

and so on...

I know how to crawl through and continue if the value is a hash, but I'm unsure how to concatenate the whole thing together and pass the value back up. Here is my code:

```
def crawl(input)
  input.each do |k,v|
    case v
    when Hash
      out < "#{k}."
      crawl(v)
    else
      out < " = '#{v}';"
    end
  end
end

```

My problem is: where to define `out` and how to return it all back. I'm very new to Ruby.