Golang Map with Slice Values

package main

import (
    "fmt"
)

func main() {
    categories := map[string][]string{
        "category1": []string{"product 1", "product 2"},
        "category2": []string{"product 3", "product 4", "product 5"},
        "category3": []string{"product 1"},
    }
    fmt.Println(categories)
    fmt.Println("Product List")
    for category, products := range categories {
        fmt.Println(category)
        for _, product := range products {
            fmt.Println("\t", product)
        }
    }
}    
        
map[category1:[product 1 product 2] category2:[product 3 product 4 product 5] category3:[product 1]]
Product List
category1
            product 1
            product 2
category2
            product 3
            product 4
            product 5
category3
            product 1