fixed shortcomings