procedure Decrypt(var S: String); var i: Byte; begin for i:= 1 to Length(S) do S[i]:= not (Ord(S[i]) + i); end;