Любой уровень вложенности в JavaScript

Могут быть и такие вызовы функций: func()()() и func()()()() - и так далее до бесконечности.

Для этого нужно, чтобы внутренняя функция тоже возвращала функцию, та - еще одну и так далее. Вот пример:

javascriptfunction func() {
  return function() {
    return function() {
      return '!';
    };
  };
}

console.log( func()()() ); // выведет '!'
Задание 1

Сделайте функцию func, которая будучи вызвана вот так: func()()()()(), вернет '!'.