#!/usr/bin/env python3
# SPDX-License-Identifier: WTFPL

import argparse
import re


parser = argparse.ArgumentParser()
parser.add_argument("pattern", help="Pattern on which to group lines")
args = parser.parse_args()

pattern = re.compile(args.pattern)

groups = {}

while True:
    try:
        line = input()
    except EOFError:
        break

    match = pattern.search(line)
    if match:
        if pattern.groups:
            k = "".join(match.groups())
        else:
            k = match[0]
    else:
        k = None
    groups.setdefault(k, []).append(line)


for k in sorted(groups, key=lambda k: k or ""):
    lines = groups[k]
    print(f"{k}:")
    for line in lines:
        print(line)
