removed reliance on angularjs