private function set($part, $value)
    {
        if (null === $value && isset(self::$defaults[$part])) {
            $value = self::$defaults[$part];
        }
        $this->parts[$part] = $value;
        return $this;
    }