using canonpaths so that relative path addressing works as expected