Problem
Implement a pushdown automaton that will check if a given string is palindrome or not. To make your task easier you can assume the alphabet you are going to work on is limited to {a,b,c,d}. Your implementation can use a CYK algorithm to check if the given string is a palindrome. You're not allowed to just check if the string is a palindrome by comparing the characters one by one from both sides, your implementation needs to be an actual pushdown automaton or CYK algorithm.