Why is this being done by directly invoking the canonicalize behavior instead of using the function?