updated struct