add inplace editing