Made lazy and factory identifiers own types.