Palindrome Program Logic