implemented JP