anchor.diff:        CSharpCodeBlock(TextSize.Tiny,
             ((classDef "MyClass" 
                 [
  -                typedDef "f" ["int","x"] "int" ((ret (var "x" .+ ConstInt(10)))) |> makePublic |> makeStatic
  +                typedDef "f" ["int","x"] "int" ((ret (var "x" .+ ConstInt(10)))) |> makeStatic |> makePublic 
                 ])) >>
              ((dots >>
                (staticMethodCall "Console" "WriteLine" [staticMethodCall "MyClass" "f" [ConstInt(10)]])) >> endProgram))
  
positive.code:                 typedDecl "a" "int" |> makePrivate
                  typedDecl "b" "int" |> makePublic
                  typedDef "C" [] "" (("this.a" := constInt 0) >> ("this.b" := constInt 0)) |> makePublic
                  typedDef "IncrA" ["int","diff"] "void" ("this.a" := (var "this.a" .+ var "diff")) |> makePublic
                  typedDef "IncrB" ["int","diff"] "void" ("this.b" := (var "this.b" .+ var "diff")) |> makePrivate
                ])) >>
              (dots >>
               methodCall "x" "IncrA" [ConstInt 10]))
  
        Question @"Will this program be allowed to run?"
        Pause
        TextBlock @"Yes, because \texttt{IncrA} is a public method."
      ]
  
      VerticalStack[
  
negative.code:             [
                typedDecl "cnt" "int" |> makePrivate
                typedDef "Counter" [] "" ("cnt" := constInt 0) |> makePublic
                typedDef "incr" ["int","diff"] "void" ("this.cnt" := (var "this.cnt" .+ var "diff")) |> makePublic
              ])
      ]
  
  