Also flattened the client message struct because theres no reason to nest a 2-element map at the top level