treat missing keys as errors
allow overwriting with shorter or longer paths