Generated porifle controller