checkpoint
added editable trait