Support generic assign