removed constraint on explicit initialization