Designing CFG that accepts b^m a^n (m

I am trying to design a CFG that generates the language {a^k b^m a^n a^k | m ≤ n}. However, I am having trouble with the b^m a^n where m ≤ n. How do I solve this?