add new function, fix 5.4 only support shtuffs