inlined unnecessary function