Update implementation (doesn't work yet)