anchor.diff:  <% end -%>
   <% if @remote -%>
   <% @mda.sub_analyses.each do |disc| -%>
  -from server.sub_analysis_proxy import <%= disc.py_classname %>Proxy
  +from <%= @server_module %>.sub_analysis_proxy import <%= disc.py_classname %>Proxy
   <% end -%>
   <% @mda.plain_disciplines.each do |disc| %>
  -from server.discipline_proxy import <%= disc.py_classname %>Proxy
  +from <%= @server_module %>.remote_discipline import Remote<%= disc.py_classname %>
   <% end -%>
   <% end -%>
   
  
positive.code: <% @mda.plain_disciplines.each do |d| -%>
      def create_<%= d.basename %>(self):
  <% if @remote -%>
          return <%= d.py_classname %>Proxy(self._thrift_client)
  <% else -%>
      	return <%= d.py_classname %>()
  <% end -%>
  
negative.code:     def __init__(self, thrift_client=None, **kwargs):
          super(<%= @mda.py_classname %>Base, self). __init__(**kwargs)
  
          self.nonlinear_solver = <%= @impl.nonlinear_solver.name %>()       
          self.nonlinear_solver.options['atol'] = <%= @impl.nonlinear_solver.atol %>
          self.nonlinear_solver.options['rtol'] = <%= @impl.nonlinear_solver.rtol %>
          self.nonlinear_solver.options['maxiter'] = <%= @impl.nonlinear_solver.maxiter %>
          self.nonlinear_solver.options['err_on_maxiter'] = <%= @impl.to_code(:nonlinear_solver, :err_on_maxiter) %>
          self.nonlinear_solver.options['iprint'] = <%= @impl.nonlinear_solver.iprint %>
  
          self.linear_solver = <%= @impl.linear_solver.name %>()       
          self.linear_solver.options['atol'] = <%= @impl.linear_solver.atol %>
          self.linear_solver.options['rtol'] = <%= @impl.linear_solver.rtol %>
          self.linear_solver.options['maxiter'] = <%= @impl.linear_solver.maxiter %>
          self.linear_solver.options['err_on_maxiter'] = <%= @impl.to_code(:linear_solver, :err_on_maxiter) %>
          self.linear_solver.options['iprint'] = <%= @impl.linear_solver.iprint %>
  <% if @remote %>
          self._thrift_client = thrift_client
  <% end -%>
  