*DECK             PTWO
FUNC PTWO((I)) I;  # RETURNS -1 IF I IS NOT A POWER OF TWO #
BEGIN           #ELSE RETURNS POWER OF TWO = 0...58#
    ITEM I,J,K; 
    IF I GR 0 THEN
         BEGIN
         IF I LAN (I-1) EQ 0 THEN 
              BEGIN #POWER OF TWO#
              J=0;
              K=1;
PT10:         IF K NQ I THEN
                   BEGIN
                   K=K+K; 
                   J=J+1; 
                   GOTO PT10; 
                   END
              PTWO=J; 
              RETURN; 
              END 
         END
    PTWO=-1;
END 
TERM
