------
## 最终结论
```python
def k_smallest_pairs(arr1, arr2, k):
    import heapq
    
    # Create a min-heap to store the pairs and their sums
    min_heap = []
    
    # Generate all possible pairs and their sums
    for num1 in arr1:
        for num2 in arr2:
            heapq.heappush(min_heap, (num1 + num2, [num1, num2]))
    
    # Extract the k smallest pairs
    result = []
    while k > 0 and min_heap:
        sum_pair, pair = heapq.heappop(min_heap)
        result.append(pair)
        k -= 1
    
    return result
```