adding size and empty functions