private function init($name)
    {
        if (null === $name) {
            $name = $this->default;
        }

        if (!isset(static::$orderMap[ $name ])) {
            throw new \InvalidArgumentException(sprintf(
                'Unknown status name "%s" for "%s"',
                $name,
                static::class
            ));
        }

        $this->name  = $name;
        $this->order = static::$orderMap[ $name ];
    }