// Generated by ReScript, PLEASE EDIT WITH CARE


function foo(xOpt, yOpt, zOpt, w) {
  var x = xOpt !== undefined ? xOpt : 1;
  var y = yOpt !== undefined ? yOpt : 2;
  var z = zOpt !== undefined ? zOpt : 3;
  return ((x + y | 0) + z | 0) + w | 0;
}

function bar(x, y, z, w) {
  return y + w | 0;
}

console.log(foo(3, undefined, undefined, 4));

console.log(7);

function threeArgs(aOpt, bOpt, cOpt, d) {
  var a = aOpt !== undefined ? aOpt : 1;
  var b = bOpt !== undefined ? bOpt : 2;
  var c = cOpt !== undefined ? cOpt : 3;
  return ((a + b | 0) + c | 0) + d | 0;
}

console.log(threeArgs(4, undefined, 7, 1));

console.log(threeArgs(4, undefined, undefined, 1));

function twoArgs(aOpt, bOpt, c) {
  var a = aOpt !== undefined ? aOpt : 1;
  var b = bOpt !== undefined ? bOpt : 2;
  return (a + b | 0) + c | 0;
}

console.log(twoArgs(undefined, undefined, 1));

var a = 3;

console.log(a + 44 | 0);

function wrapfourArgs(a, b, c, n) {
  var dOpt;
  var a$1 = a !== undefined ? a : 1;
  var b$1 = b !== undefined ? b : 2;
  var c$1 = c !== undefined ? c : 3;
  var d = dOpt !== undefined ? dOpt : 4;
  return (((a$1 + b$1 | 0) + c$1 | 0) + d | 0) + n | 0;
}

console.log(wrapfourArgs(3, undefined, 44, 44));

console.log(wrapfourArgs(undefined, 4, 44, 44));

export {
  foo ,
  bar ,
  
}
/*  Not a pure module */
