require 4 params for each level.