privatised many methods