deleted unneed funcs