added `SUBSTITUTE` AQL function