public static function parseActionQueryString(string $actionQueryString)
    {
        if (empty($actionQueryString)) {
            return null;
        }
        
        $action = Security::open($actionQueryString);
        if ($action === false) {
            throw new SecurityException('Action has expired, please try again');
        }
        
        $actionObj = json_decode($action);
        $actionObj->arguments = (array)$actionObj->arguments;
        
        return $actionObj;
    }