p_install didn't return TF invisibly as intended as the invisible function wrapped the return