add id property to avoid repeatness