resolve IE8 bug for now with the subfunctions merged into a single file