first initial functions in core.js