half broken unmarshalling