class_docstr: A3C model where the policy and V-function share parameters.
  
  Args:
      shared (Link): Shared part. Nonlinearity must be included in it.
      pi (Policy): Policy that receives output of shared as input.
      v (VFunction): V-function that receives output of shared as input.
class_docstr_tok: ["A3C","model","where","the","policy","and","V-function","share","parameters",".","Args",":","shared","(","Link",")",":","Shared","part",".","Nonlinearity","must","be","included","in","it",".","pi","(","Policy",")",":","Policy","that","receives","output","of","shared","as","input",".","v","(","VFunction",")",":","V-function","that","receives","output","of","shared","as","input","."]
code: def pi_and_v(self, obs):
      h = self.shared(obs)
      pout = self.pi(h)
      vout = self.v(h)
      return pout, vout
  
imports: import copy
  from logging import getLogger
  import chainer
  from chainer import functions
  import numpy
  from chainerrl import agent
  from chainerrl.misc import async_
  from chainerrl.misc.batch_states import batch_states
  from chainerrl.misc import copy_param
  from chainerrl.recurrent import Recurrent
  from chainerrl.recurrent import RecurrentChainMixin
  from chainerrl.recurrent import state_kept
label_desc: Use image node_id 2 for calling the A3CSharedModel obj's underlying member method code with example usage: obj.pi_and_v(obs) and returns: pout,  vout