scheme update & code manipulation