refactored ceci so its varnames make more sense