override init to avoid NPE at initializing