code: func (dt *DateTime) SetBSON(raw bson.Raw) error {
  	decoded := time.Time{}
  
  	bsonErr := raw.Unmarshal(&decoded)
  	if bsonErr != nil {
  		return bsonErr
  	}
  	*dt = DateTime(decoded)
  	return nil
  
  }
docs: // SetBSON implements bson.Setter since the bson library does not look at underlying types and matches directly the time.Time type