added singleton example