@Chandrabhan Vishwa 1
let take z as stack symbol,
on getting a on empty stack ===> push z in to the stack, change state
on getting a on z ===> push z in to the stack, don't change state
on getting b on z ===> push z in to the stack, change state
on getting b on z ===> push z in to the stack, don't change state
on getting a on z ===> pop z from the stack, change state
on getting a on z ===> pop z from the stack, don't change state
check for empty stack on getting a ( if k > (n+l) ), check for empty stack on getting empty string ( if k = (n+l) ),