U
    ‰di  ã                   @   s.   d dl mZ d dlmZ ddd„Zdd„ ZdS )	é    )Úcore)ÚParameterTagsNc           
      K   sâ   |pdddif}|pdddif}|p,| j  ¡ }| jrŽ| j |d ¡g |d fd|gi|d —Ž}| j |d ¡g |d	 fd|gi|d —Ž}	n$t |d | j¡}t |d	 | j¡}	|  |tj	¡ |  |	tj
¡ ||||	g|f|ŽS )
ZElementwise_LinearZConstantFillÚvalueg      ð?g        r   Ú_wÚshapeé   Ú_b)ÚnetZNextNameZinit_paramsZparam_init_netÚ__getattr__r   ZScopedBlobReferenceZAddParameterr   ZWEIGHTZBIAS)
ÚmodelZop_callZblob_inZblob_outZdimZweight_initZ	bias_initÚkwargsZweightZbias© r   úL/tmp/pip-unpacked-wheel-ua33x9lu/caffe2/python/helpers/elementwise_linear.pyÚ_elementwise_linear   s>    þýüþýü ÿ ÿr   c                 O   s   t | | jjf|ž|ŽS )N)r   r	   ZElementwiseLinear)r   Úargsr   r   r   r   Úelementwise_linear,   s     ÿÿÿr   )NN)Zcaffe2.pythonr   Z%caffe2.python.modeling.parameter_infor   r   r   r   r   r   r   Ú<module>   s
      þ
 