add go custom types