@yuhunglin can we remove the `isValid` here?