To those of you who saw my post from an hour ago - I deleted it because I came up with an idea.
To summarize, I have to design a PDA for this language, without using the usual method of firstly defining a CFG then transforming it to a PDA.
$ L = \{ a^{3n}b^{2n} | n \ge 0 \}$
Since I didn't know how to implement non-determinism, I limited the number of "a"'s on the stack to the number of b's to be read. Then I just pop the $a$s from the stack.
My question is, is this a valid PDA for this language? If not, can anyone give a few examples of strings that are either wrongfully discarded or wrongfully admitted by the PDA, and a possible solution or hint?
Thanks!