router implementation started