read_info returns dict now