private function buildProperties(
        MapInterface $properties,
        Str $name
    ): MapInterface {
        $name = $name->prepend('{')->append('}.');

        return $properties->reduce(
            new Map('string', 'string'),
            static function(MapInterface $carry, string $property) use ($name): MapInterface {
                return $carry->put(
                    $property,
                    (string) $name->append($property)
                );
            }
        );
    }