J: functions + pre/post + remodeled buffering!