add greed core, ajax, promise