Linq Group with inside array element : ```
a = new { Key = new[] {1, 2} };
b = new { Key = new[] {2, 3} };
c = new { Key = new[] {3} };
```

I want a linq func that will got the result below, after `new [] {a, b, c}.func(x => x.Key)`

```
new KeyValuePair[] {
  { Key = 1, Value = new [] { a } },
  { Key = 2, Value = new [] { a, b } },
  { Key = 3, Value = new [] { b, c } }
}
```