package main import ( "fmt" "os" "strconv" "strings" ) func main() { lines, err := parse() if err != nil { fmt.Println("Error:", err) } var p1 int = 0 var p2 int = 0 for _, line := range lines { numbers := strings.Fields(line) report := make([]int, len(numbers)) for i, num := range numbers { x, err := strconv.Atoi(num) if err != nil { panic(err) } report[i] = x } } fmt.Println("p1: ", p1) fmt.Println("p2: ", p2) } func parse() ([]string, error) { if len(os.Args) < 2 { return nil, fmt.Errorf("no file provided") } filePath := os.Args[1] data, err := os.ReadFile(filePath) if err != nil { return nil, fmt.Errorf("error opening file: %v", err) } chunks := strings.Split(string(data), "\n") var nonEmpthyChunks = []string{} for _, chunk := range chunks { if chunk != "" { nonEmpthyChunks = append(nonEmpthyChunks, chunk) } } return nonEmpthyChunks, nil }