1. Support None type checking; 2. More restrictive type checkings;