pre-final version of first iteration.