ror\n\n");
          // addError(5, "line 5 has some error\nfdsfsdjkf\nfdsjfkl\nfdjsklfs\n    tabs");
          //clearErrors();
        }
      });
    }

    function addSystemSource(code, filename) {
      // console.log(`adding extra lib file named '${filename}'`);
      monaco.languages.typescript.javascriptDefaults.addExtraLib(code, filename);
    }

    function getCode() {
      return editor.getValue({ lineEnding: '\n' });
    }

    function setCode(code) {
      if (editor == null) {
        init