some refactor of the framework
another refactor to cache jObj