impl some path interfaces