added private getInstance methods