generate constructor if needed and fields are writen in camelCase