refactored to static class.