cleaned up info collection using read