PASS: single pass avoids recursive replacement PASS: unknown variable remains intact PASS: missing variable does not warn and remains intact PASS: unicode and emoji preserved PASS: case-insensitive key matching PASS: null becomes empty string PASS: array value safely ignored PASS: escaped newline normalization preserved