improving reading args