arrow funcs, block scoping, default func params, rest func params, destructuring