generate by ext_skel script