code interpretation