refactory openj