Add type implementations