added several utility classes