empty only takes variables