first pass with angular.