Internet explorer compatibility and Promise compatibility