initial impl of path types