1.  
  2. type NullableT = { [P in keyof T]: T[P] | null }
  3. type PartialT = { [P in keyof T]?: T[P] }
  4.