I have a list of java objects as below:

```json
[
  {
    id: "frwfhfijvfhviufhbviufg",
    country_code: "DE",
    message_key: "key1",
    translation: "This is the deutsch translation"
  },
  {
    id: "dfregregtegetgetgttegt",
    country_code: "GB",
    message_key: "key1",
    translation: "This is the uk translation"
  },
  {
    id: "frffgfbgbgbgbgbgbgbgbg",
    country_code: "DE",
    message_key: "key2",
    translation: "This is the again deutch translation"
  }
]

```

How can I convert this into a `Map<String, Map<String, String>>` like below:

```json
{
  "DE": {
    "key1": "This is the deutsch translation",
    "key2": "This is the again deutch translation"
  },
  "GB": {
    "key1": "This is the uk translation"
  }
}

```

I am new to java and below is my code but the code is not correct:

```java
Map<String, Translations> distinctTranslations = customTranslationsEntities
        .stream().collect(Collectors.groupingBy(
                CustomTranslationsEntity::getCountryCode,
                Collectors.toMap(
                        CustomTranslationsEntity::getMessageKey,
                        CustomTranslationsEntity::getTranslation),

                )))

```

where Translations is proto buffer message like below:

```
message Translations {
  map<string, string> translations = 1;
}

```

Here `map<string, string> translations` means map like `"key1", "This is the deutsch translation"`...like this.