package platform import "strings" func parseLSBLKPairs(line string) map[string]string { out := map[string]string{} for _, part := range splitQuotedFields(line) { idx := strings.Index(part, "=") if idx <= 0 { continue } key := part[:idx] value := strings.Trim(part[idx+1:], `"`) out[key] = value } return out } func splitQuotedFields(s string) []string { var out []string var cur strings.Builder inQuotes := false for _, r := range s { switch r { case '"': inQuotes = !inQuotes cur.WriteRune(r) case ' ': if inQuotes { cur.WriteRune(r) } else if cur.Len() > 0 { out = append(out, cur.String()) cur.Reset() } default: cur.WriteRune(r) } } if cur.Len() > 0 { out = append(out, cur.String()) } return out }