major restructuring
major restructuring
use info classed returned by environment
use info classes directly