graphical fk implementation improved