-                                       #TODO: see if we can't prevent key normalisation with ->normalizeKeys(false)
-                                       #->scalarNode('locales')->cannotBeEmpty()->defaultValue($defaults['locales'])->end()
-                                       ->variableNode('locales')
-                                               ->treatNullLike([])
-                                               ->defaultValue($defaults['locales'])
-                                               #->scalarPrototype()->end()
-                                       ->end()
-                                       #TODO: see if we can't prevent key normalisation with ->normalizeKeys(false)
-                                       #->scalarNode('languages')->cannotBeEmpty()->defaultValue($defaults['languages'])->end()
-                                       ->variableNode('languages')
-                                               ->treatNullLike([])
-                                               ->defaultValue($defaults['languages'])
-                                               #->scalarPrototype()->end()
+                                       ->scalarNode('locales')->cannotBeEmpty()->defaultValue($defaults['locales'])->end()
+                                       ->scalarNode('languages')->cannotBeEmpty()->defaultValue($defaults['languages'])->end()
+                                       ->arrayNode('path')
+                                               ->addDefaultsIfNotSet()
+                                               ->children()
+                                                       ->scalarNode('cache')->defaultValue($defaults['path']['cache'])->end()
+                                                       ->scalarNode('public')->defaultValue($defaults['path']['public'])->end()
+                                               ->end()