separated canonicalization from param evaluation and fixed build