slightly different prolog