Module ClassDef bases NameLoad body FunctionDef arguments args NameParam NameParam defaults body Expr Str FunctionDef arguments args NameParam defaults body Assign NameStore BinOpMult ListLoad Num Call NameLoad NameLoad Assign NameStore Num For NameStore Call NameLoad Num Call NameLoad NameLoad body While BoolOpAnd CompareGt NameLoad Num CompareNotEq SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad If CompareEq SubscriptLoad NameLoad Index BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad body AugAssignAdd NameStore Num Assign SubscriptStore NameLoad Index NameLoad NameLoad Return NameLoad decorator_list If UnaryOpNot NameLoad body Return NameLoad Assign NameStore BinOpAdd NameLoad SubscriptLoad NameLoad Slice Num Assign NameStore Call NameLoad NameLoad Assign NameStore SubscriptLoad NameLoad Index Num While CompareGtE NameLoad Call NameLoad NameLoad body Assign NameStore SubscriptLoad NameLoad Index NameLoad Return BinOpAdd SubscriptLoad SubscriptLoad NameLoad Slice BinOpAdd NameLoad Num Slice Num NameLoad decorator_list decorator_list ClassDef bases NameLoad body FunctionDef arguments args NameParam NameParam defaults body Expr Str FunctionDef arguments args NameParam defaults body If UnaryOpNot NameLoad body Return ListLoad Str Str Assign NameStore ListLoad Str For NameStore NameLoad body AugAssignAdd NameStore ListLoad Str NameLoad AugAssignAdd NameStore ListLoad Str Str Return NameLoad decorator_list Assign NameStore Call NameLoad NameLoad Assign NameStore BinOpMult ListLoad Num Call NameLoad NameLoad Assign TupleStore NameStore NameStore TupleLoad Num Num For NameStore Call NameLoad Num BinOpSub Call NameLoad NameLoad Num body Assign NameStore BinOpSub BinOpMult Num NameLoad NameLoad If CompareGt NameLoad NameLoad body Assign SubscriptStore NameLoad Index NameLoad Call NameLoad BinOpSub NameLoad NameLoad SubscriptLoad NameLoad Index NameLoad orelse Assign SubscriptStore NameLoad Index NameLoad Num While CompareEq SubscriptLoad NameLoad Index BinOpAdd BinOpAdd NameLoad Num SubscriptLoad NameLoad Index NameLoad SubscriptLoad NameLoad Index BinOpSub BinOpSub NameLoad Num SubscriptLoad NameLoad Index NameLoad body AugAssignAdd SubscriptStore NameLoad Index NameLoad Num If CompareGt BinOpAdd NameLoad SubscriptLoad NameLoad Index NameLoad NameLoad body Assign TupleStore NameStore NameStore TupleLoad NameLoad BinOpAdd NameLoad SubscriptLoad NameLoad Index NameLoad Assign NameStore Num For NameStore Call NameLoad Num BinOpSub Call NameLoad NameLoad Num body If CompareEq BinOpSub NameLoad SubscriptLoad NameLoad Index NameLoad Num body Assign NameStore SubscriptLoad NameLoad Index NameLoad Return BinOpAdd SubscriptLoad NameLoad Slice BinOpSub Call NameLoad NameLoad Num BinOpSub NameLoad Num Num NameLoad decorator_list decorator_list
N/A Solution N/A object N/A shortestPalindrome N/A N/A self s N/A N/A N/A 
        :type s: str
        :rtype: str
         getPrefix N/A N/A pattern N/A N/A N/A prefix N/A N/A -1 N/A len pattern N/A j -1 N/A i N/A xrange 1 N/A len pattern N/A N/A N/A N/A j -1 N/A N/A pattern N/A N/A j 1 N/A pattern N/A i N/A N/A j N/A prefix N/A j N/A N/A N/A pattern N/A N/A j 1 N/A pattern N/A i N/A N/A j 1 N/A N/A prefix N/A i j N/A prefix N/A N/A N/A s N/A N/A s N/A A N/A s N/A s N/A -1 N/A prefix N/A getPrefix A N/A i N/A prefix N/A -1 N/A N/A i N/A len s N/A N/A i N/A prefix N/A i N/A N/A N/A N/A s N/A N/A i 1 N/A -1 s N/A N/A Solution2 N/A object N/A shortestPalindrome N/A N/A self s N/A N/A N/A 
        :type s: str
        :rtype: str
         preProcess N/A N/A s N/A N/A N/A N/A s N/A N/A N/A ^ $ N/A string N/A ^ N/A c s N/A N/A string N/A # c N/A string N/A # $ N/A string N/A N/A string N/A preProcess s N/A palindrome N/A N/A 0 N/A len string N/A N/A center right N/A 0 0 N/A i N/A xrange 1 N/A N/A len string 1 N/A N/A i_mirror N/A N/A 2 center i N/A N/A right i N/A N/A N/A palindrome N/A i N/A min N/A right i N/A palindrome N/A i_mirror N/A N/A N/A palindrome N/A i 0 N/A N/A N/A string N/A N/A N/A i 1 N/A palindrome N/A i N/A string N/A N/A N/A i 1 N/A palindrome N/A i N/A N/A N/A palindrome N/A i 1 N/A N/A N/A i N/A palindrome N/A i right N/A N/A N/A center right N/A i N/A i N/A palindrome N/A i N/A max_len 0 N/A i N/A xrange 1 N/A N/A len string 1 N/A N/A N/A N/A i N/A palindrome N/A i 1 N/A N/A max_len N/A palindrome N/A i N/A N/A N/A s N/A N/A N/A len s 1 N/A max_len 1 -1 s N/A N/A