basic router Implementation