Hi All, can anyone tell me why the following rules rules replace: '``@statements. interpreterProxy pop: ``@const. interpreterProxy pushInteger: ``@integer' with: '``@statements. interpreterProxy methodReturnInteger: ``@integer'; replace: '``@statements. interpreterProxy pop: ``@const. ^interpreterProxy pushInteger: ``@integer' with: '``@statements. ^interpreterProxy methodReturnInteger: ``@integer'. or rules replace: 'interpreterProxy pop: ``@const. interpreterProxy pushInteger: ``@integer' with: 'interpreterProxy methodReturnInteger: ``@integer'; replace: 'interpreterProxy pop: ``@const. ^interpreterProxy pushInteger: ``@integer' with: '^interpreterProxy methodReturnInteger: ``@integer'. do edit this primitiveRendererVersion <export: true> interpreterProxy methodArgumentCount = 0 ifFalse:[^interpreterProxy primitiveFail]. interpreterProxy pop: 1. ^interpreterProxy pushInteger: 1. to primitiveRendererVersion <export: true> interpreterProxy methodArgumentCount = 0 ifFalse: [ ^ interpreterProxy primitiveFail ]. ^ interpreterProxy methodReturnInteger: 1 but not this? primitiveTextureDepth | handle result renderer | <export: true> interpreterProxy methodArgumentCount = 2 ifFalse:[^interpreterProxy primitiveFail]. handle := interpreterProxy stackIntegerValue: 0. renderer := interpreterProxy stackIntegerValue: 1. interpreterProxy failed ifTrue:[^nil]. result := self cCode:'b3dxActualTextureDepth(renderer, handle)' inSmalltalk:[-1]. result < 0 ifTrue:[^interpreterProxy primitiveFail]. interpreterProxy pop: 3. ^interpreterProxy pushInteger: result. _,,,^..^,,,_ best, Eliot