imrpove config
add tests