Added singleton pattern.