public function login(User $user)
    {
        // if not impersonated, save current logged in user
        // otherwise do not update (leave first original user in session)
        if (!$this->isActive()) {
            session()->put($this->originalUserKey, auth()->user()->id);
        }

        auth()->loginUsingId($user->id);

        session()->put($this->isActiveKey, true);
    }