ware funcs