refactor transport fetch way