private function getChallengeFromExtra($extra)
    {
        return (is_object($extra)
            && isset($extra->challenge_details)
            && is_object($extra->challenge_details)
            && isset($extra->challenge_details->challenge))
            ? json_decode($extra->challenge_details->challenge)
            : false;
    }