
    /iik                        d dl Z d dlmZ d dlZd dlZd dlmZ d dlm	Z	m
Z
 d dlmZmZ d dlmZ d dlmZ d dlmZ  G d	 d
e	          Z G d de
e	          Z G d de	          Z G d de	          Z G d de	          Z G d de	          Z G d de	          Z G d de	          Z G d de	          Z G d de	          Z ed          d             Zd  Z ed          d!             Z  ed          d"             Z!ej"        #                    d#d$d%g          d&             Z$ ed          d'             Z% ed          d(             Z& ed          d)             Z' ed          d*             Z(d+ Z)d, Z*d- Z+dS ).    N)PrettyPrinter)config_context)BaseEstimatorTransformerMixin)SelectKBestchi2)LogisticRegressionCV)make_pipeline)_EstimatorPrettyPrinterc                   8    e Zd Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd
Zd ZdS )LogisticRegression      ?r   F-C6?T   Nwarnd   c                     || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        || _        d S N)Cl1_ratiodualtolfit_interceptintercept_scalingclass_weightrandom_statesolvermax_itermulti_classverbose
warm_startn_jobs)selfr   r   r   r   r   r   r   r   r   r   r   r    r!   r"   s                  e/var/www/html/bet.cuttalo.com/ml/venv/lib/python3.11/site-packages/sklearn/utils/tests/test_pprint.py__init__zLogisticRegression.__init__   so    "  	*!2(( &$    c                     | S r    )r#   Xys      r$   fitzLogisticRegression.fit1       r&   )r   r   Fr   Tr   NNr   r   r   r   FN)__name__
__module____qualname__r%   r+   r(   r&   r$   r   r      sd            @    r&   r   c                       e Zd ZddZddZdS )StandardScalerTc                 0    || _         || _        || _        d S r   )	with_meanwith_stdcopy)r#   r5   r3   r4   s       r$   r%   zStandardScaler.__init__6   s    " 			r&   Nc                     | S r   r(   r#   r)   r5   s      r$   	transformzStandardScaler.transform;   r,   r&   )TTTr   )r-   r.   r/   r%   r8   r(   r&   r$   r1   r1   5   s<           
     r&   r1   c                       e Zd ZddZdS )RFENr   r   c                 >    || _         || _        || _        || _        d S r   )	estimatorn_features_to_selectstepr    )r#   r<   r=   r>   r    s        r$   r%   zRFE.__init__@   s#    "$8!	r&   )Nr   r   r-   r.   r/   r%   r(   r&   r$   r:   r:   ?   s(             r&   r:   c                   (    e Zd Z	 	 	 	 	 	 	 	 	 d	dZdS )
GridSearchCVNr   Tr   2*n_jobsraise-deprecatingFc                     || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        d S r   )r<   
param_gridscoringr"   iidrefitcvr    pre_dispatcherror_scorereturn_train_score)r#   r<   rE   rF   r"   rG   rH   rI   r    rJ   rK   rL   s               r$   r%   zGridSearchCV.__init__H   sZ     #$
(&"4r&   )	NNr   Tr   r   rB   rC   Fr?   r(   r&   r$   rA   rA   G   sE        
 ' 5 5 5 5 5 5r&   rA   c                   B    e Zd Zdddddddddddd	d
dddej        fdZdS )CountVectorizercontentzutf-8strictNTz(?u)\b\w\w+\b)r   r   wordr   r   Fc                     || _         || _        || _        || _        || _        || _        || _        || _        |	| _        || _	        || _
        || _        || _        |
| _        || _        || _        || _        d S r   )inputencodingdecode_errorstrip_accentspreprocessor	tokenizeranalyzer	lowercasetoken_pattern
stop_wordsmax_dfmin_dfmax_featuresngram_range
vocabularybinarydtype)r#   rS   rT   rU   rV   rZ   rW   rX   r\   r[   r`   rY   r]   r^   r_   ra   rb   rc   s                     r$   r%   zCountVectorizer.__init__d   s    ( 
 (*(" "*$(&$


r&   )r-   r.   r/   npint64r%   r(   r&   r$   rN   rN   c   s_         &h%$ $ $ $ $ $r&   rN   c                       e Zd ZddZdS )PipelineNc                 "    || _         || _        d S r   )stepsmemory)r#   ri   rj   s      r$   r%   zPipeline.__init__   s    
r&   r   r?   r(   r&   r$   rg   rg      s(             r&   rg   c                   2    e Zd Z	 	 	 	 	 	 	 	 	 	 	 	 	 	 ddZd
S )SVCr   rbf   auto_deprecated        TFMbP?   Novrc                     || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        || _        d S r   )kerneldegreegammacoef0r   r   	shrinkingprobability
cache_sizer   r    r   decision_function_shaper   )r#   r   rv   rw   rx   ry   rz   r{   r   r|   r   r    r   r}   r   s                  r$   r%   zSVC.__init__   sp    " 

"&$( '>$(r&   )r   rm   rn   ro   rp   TFrq   rr   NFrs   rt   Nr?   r(   r&   r$   rl   rl      sT          %) ) ) ) ) )r&   rl   c                   $    e Zd Z	 	 	 	 	 	 	 ddZdS )PCANTFautorp   c                 h    || _         || _        || _        || _        || _        || _        || _        d S r   )n_componentsr5   whiten
svd_solverr   iterated_powerr   )r#   r   r5   r   r   r   r   r   s           r$   r%   zPCA.__init__   s>     )	$,(r&   )NTFr   rp   r   Nr?   r(   r&   r$   r   r      s?         ) ) ) ) ) )r&   r   c                   ,    e Zd Z	 	 	 	 	 	 	 	 	 	 	 d
d	ZdS )NMFNcd	frobeniusr   rr   rp   r   Fc                     || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        d S r   )r   initr   	beta_lossr   r   r   alphar   r    shuffle)r#   r   r   r   r   r   r   r   r   r   r    r   s               r$   r%   zNMF.__init__   sW     )	" (
 r&   )NNr   r   r   rr   Nrp   rp   r   Fr?   r(   r&   r$   r   r      sK              r&   r   c                   *    e Zd Zej        ddddfdZdS )SimpleImputermeanNr   Tc                 L    || _         || _        || _        || _        || _        d S r   )missing_valuesstrategy
fill_valuer    r5   )r#   r   r   r   r    r5   s         r$   r%   zSimpleImputer.__init__   s,     - $			r&   )r-   r.   r/   rd   nanr%   r(   r&   r$   r   r      s;         v     r&   r   Fprint_changed_onlyc                  n    t                      } d}|dd          }|                                 |k    sJ d S )N!  
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
                   intercept_scaling=1, l1_ratio=0, max_iter=100,
                   multi_class='warn', n_jobs=None, random_state=None,
                   solver='warn', tol=0.0001, verbose=0, warm_start=False)r   )r   __repr__)lrexpecteds     r$   
test_basicr      sE     
		BNH |H;;==H$$$$$$r&   c                      t          d          } d}|                                 |k    sJ t          ddddd          } d	}|d
d          }|                                 |k    sJ t          d          }d}|                                |k    sJ t          t          d                    }d}|                                |k    sJ t	          t          t          j        dd
g          d                     d S )Nc   r   zLogisticRegression(C=99)g?Fi  T)r   r   r   r   r    zk
LogisticRegression(C=99, class_weight=0.4, fit_intercept=False, tol=1234,
                   verbose=True)r   r   )r   zSimpleImputer(missing_values=0)NaNzSimpleImputer()g?)Csuse_legacy_attributes)r   r   r   floatreprr	   rd   array)r   r   imputers      r$   test_changed_onlyr     s   	b	!	!	!B-H;;==H$$$$ 

3et
 
 
B$H |H;;==H$$$$1---G4H)))) 5<<888G$H)))) 		3(!3!35	Q	Q	QRRRRRr&   c                      t          t                      t          d                    } d}|dd          }|                                 |k    sJ d S )Ni  r   a  
Pipeline(memory=None,
         steps=[('standardscaler',
                 StandardScaler(copy=True, with_mean=True, with_std=True)),
                ('logisticregression',
                 LogisticRegression(C=999, class_weight=None, dual=False,
                                    fit_intercept=True, intercept_scaling=1,
                                    l1_ratio=0, max_iter=100,
                                    multi_class='warn', n_jobs=None,
                                    random_state=None, solver='warn',
                                    tol=0.0001, verbose=0, warm_start=False))],
         transform_input=None, verbose=False)r   )r
   r1   r   r   )pipeliner   s     r$   test_pipeliner     s^     ^--/AC/H/H/HIIH1H |H(******r&   c                  $   t          t          t          t          t          t          t          t                                                                                            } d}|dd          }|                                 |k    sJ d S )Nat  
RFE(estimator=RFE(estimator=RFE(estimator=RFE(estimator=RFE(estimator=RFE(estimator=RFE(estimator=LogisticRegression(C=1.0,
                                                                                                                     class_weight=None,
                                                                                                                     dual=False,
                                                                                                                     fit_intercept=True,
                                                                                                                     intercept_scaling=1,
                                                                                                                     l1_ratio=0,
                                                                                                                     max_iter=100,
                                                                                                                     multi_class='warn',
                                                                                                                     n_jobs=None,
                                                                                                                     random_state=None,
                                                                                                                     solver='warn',
                                                                                                                     tol=0.0001,
                                                                                                                     verbose=0,
                                                                                                                     warm_start=False),
                                                                                        n_features_to_select=None,
                                                                                        step=1,
                                                                                        verbose=0),
                                                                          n_features_to_select=None,
                                                                          step=1,
                                                                          verbose=0),
                                                            n_features_to_select=None,
                                                            step=1, verbose=0),
                                              n_features_to_select=None, step=1,
                                              verbose=0),
                                n_features_to_select=None, step=1, verbose=0),
                  n_features_to_select=None, step=1, verbose=0),
    n_features_to_select=None, step=1, verbose=0)r   )r:   r   r   )rfer   s     r$   test_deeply_nestedr   3  s}     c#c#c#&8&:&:";";<<==>>??@@
A
AC5H: |H<<>>X%%%%%%r&   )r   r   )TzRFE(estimator=RFE(...)))FzERFE(estimator=RFE(...), n_features_to_select=None, step=1, verbose=0)c                 N   t          |           5  t          d          }t          t          t          t          t          t                                                                        }|                    |          |k    sJ 	 d d d            d S # 1 swxY w Y   d S )Nr   r   )depth)r   r   r:   r   pformat)r   r   ppr   s       r$   test_print_estimator_max_depthr   X  s     
+=	>	>	> + +$1---#c#c"4"6"6778899::;;zz#(*****	+ + + + + + + + + + + + + + + + + +s   A;BB!Bc                      dgddgg dddgg ddg} t          t                      | d	          }d
}|dd          }|                                |k    sJ d S )Nrm   rq   r   r   
   r   i  )rv   rx   r   linear)rv   r      )rI   a  
GridSearchCV(cv=5, error_score='raise-deprecating',
             estimator=SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
                           decision_function_shape='ovr', degree=3,
                           gamma='auto_deprecated', kernel='rbf', max_iter=-1,
                           probability=False, random_state=None, shrinking=True,
                           tol=0.001, verbose=False),
             iid='warn', n_jobs=None,
             param_grid=[{'C': [1, 10, 100, 1000], 'gamma': [0.001, 0.0001],
                          'kernel': ['rbf']},
                         {'C': [1, 10, 100, 1000], 'kernel': ['linear']}],
             pre_dispatch='2*n_jobs', refit=True, return_train_score=False,
             scoring=None, verbose=0)r   )rA   rl   r   )rE   gsr   s      r$   test_gridsearchr   j  s     7dD\8J8J8JKK:$6$6$677J 
ceeZA	.	.	.B)H |H;;==H$$$$$$r&   c                     t          ddd          } t          dt                      fdt                      fg          }g d}g d}t          d	          t	                      g||d
t          t                    g||dg}t          |dd|          }d}|dd          }|                     |          }t          j
        dd|          }||k    sJ d S )NTr   )compactindentindent_at_name
reduce_dimclassify)         r      )r   )r   reduce_dim__n_componentsclassify__C)r   reduce_dim__kr   rn   )rI   r"   rE   a	  
GridSearchCV(cv=3, error_score='raise-deprecating',
             estimator=Pipeline(memory=None,
                                steps=[('reduce_dim',
                                        PCA(copy=True, iterated_power='auto',
                                            n_components=None,
                                            random_state=None,
                                            svd_solver='auto', tol=0.0,
                                            whiten=False)),
                                       ('classify',
                                        SVC(C=1.0, cache_size=200,
                                            class_weight=None, coef0=0.0,
                                            decision_function_shape='ovr',
                                            degree=3, gamma='auto_deprecated',
                                            kernel='rbf', max_iter=-1,
                                            probability=False,
                                            random_state=None, shrinking=True,
                                            tol=0.001, verbose=False))]),
             iid='warn', n_jobs=1,
             param_grid=[{'classify__C': [1, 10, 100, 1000],
                          'reduce_dim': [PCA(copy=True, iterated_power=7,
                                             n_components=None,
                                             random_state=None,
                                             svd_solver='auto', tol=0.0,
                                             whiten=False),
                                         NMF(alpha=0.0, beta_loss='frobenius',
                                             init=None, l1_ratio=0.0,
                                             max_iter=200, n_components=None,
                                             random_state=None, shuffle=False,
                                             solver='cd', tol=0.0001,
                                             verbose=0)],
                          'reduce_dim__n_components': [2, 4, 8]},
                         {'classify__C': [1, 10, 100, 1000],
                          'reduce_dim': [SelectKBest(k=10,
                                                     score_func=<function chi2 at some_address>)],
                          'reduce_dim__k': [2, 4, 8]}],
             pre_dispatch='2*n_jobs', refit=True, return_train_score=False,
             scoring=None, verbose=0)zfunction chi2 at 0x.*>zfunction chi2 at some_address>)r   rg   r   rl   r   r   r   rA   r   resub)r   r   N_FEATURES_OPTIONS	C_OPTIONSrE   
gspipeliner   repr_s           r$   test_gridsearch_pipeliner     s    
!a	M	M	MB,.SUU0CDEEH""""I a000#%%8(:$	
 	
 't,,-/$	
 	
J h1Q:NNNJ%)HN |HJJz""EF+-MuUUEHr&   c                      d} t          ddd|           }d t          |           D             }t          |          }d}|dd          }|                    |          |k    sJ d t          | dz             D             }t          |          }d	}|dd          }|                    |          |k    sJ d
t	          t          |                     i}t          t                      |          }d}|dd          }|                    |          |k    sJ d
t	          t          | dz                       i}t          t                      |          }d}|dd          }|                    |          |k    sJ d S )N   Tr   )r   r   r   n_max_elements_to_showc                     i | ]}||S r(   r(   .0is     r$   
<dictcomp>z/test_n_max_elements_to_show.<locals>.<dictcomp>  s    >>>1!Q>>>r&   )ra   a  
CountVectorizer(analyzer='word', binary=False, decode_error='strict',
                dtype=<class 'numpy.int64'>, encoding='utf-8', input='content',
                lowercase=True, max_df=1.0, max_features=None, min_df=1,
                ngram_range=(1, 1), preprocessor=None, stop_words=None,
                strip_accents=None, token_pattern='(?u)\\b\\w\\w+\\b',
                tokenizer=None,
                vocabulary={0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 7: 7,
                            8: 8, 9: 9, 10: 10, 11: 11, 12: 12, 13: 13, 14: 14,
                            15: 15, 16: 16, 17: 17, 18: 18, 19: 19, 20: 20,
                            21: 21, 22: 22, 23: 23, 24: 24, 25: 25, 26: 26,
                            27: 27, 28: 28, 29: 29})c                     i | ]}||S r(   r(   r   s     r$   r   z/test_n_max_elements_to_show.<locals>.<dictcomp>  s    BBB1!QBBBr&   a  
CountVectorizer(analyzer='word', binary=False, decode_error='strict',
                dtype=<class 'numpy.int64'>, encoding='utf-8', input='content',
                lowercase=True, max_df=1.0, max_features=None, min_df=1,
                ngram_range=(1, 1), preprocessor=None, stop_words=None,
                strip_accents=None, token_pattern='(?u)\\b\\w\\w+\\b',
                tokenizer=None,
                vocabulary={0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 7: 7,
                            8: 8, 9: 9, 10: 10, 11: 11, 12: 12, 13: 13, 14: 14,
                            15: 15, 16: 16, 17: 17, 18: 18, 19: 19, 20: 20,
                            21: 21, 22: 22, 23: 23, 24: 24, 25: 25, 26: 26,
                            27: 27, 28: 28, 29: 29, ...})r   a  
GridSearchCV(cv='warn', error_score='raise-deprecating',
             estimator=SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
                           decision_function_shape='ovr', degree=3,
                           gamma='auto_deprecated', kernel='rbf', max_iter=-1,
                           probability=False, random_state=None, shrinking=True,
                           tol=0.001, verbose=False),
             iid='warn', n_jobs=None,
             param_grid={'C': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
                               15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
                               27, 28, 29]},
             pre_dispatch='2*n_jobs', refit=True, return_train_score=False,
             scoring=None, verbose=0)a  
GridSearchCV(cv='warn', error_score='raise-deprecating',
             estimator=SVC(C=1.0, cache_size=200, class_weight=None, coef0=0.0,
                           decision_function_shape='ovr', degree=3,
                           gamma='auto_deprecated', kernel='rbf', max_iter=-1,
                           probability=False, random_state=None, shrinking=True,
                           tol=0.001, verbose=False),
             iid='warn', n_jobs=None,
             param_grid={'C': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
                               15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
                               27, 28, 29, ...]},
             pre_dispatch='2*n_jobs', refit=True, return_train_score=False,
             scoring=None, verbose=0))r   rangerN   r   listrA   rl   )r   r   ra   
vectorizerr   rE   r   s          r$   test_n_max_elements_to_showr     s   	 5	
 
 
B ?>&< = =>>>J J777J8H |H::j!!X---- CB&<q&@ A ABBBJ J777J=H |H::j!!X---- tE"899::;J	ceeZ	(	(B)H |H::b>>X%%%% tE"81"<==>>?J	ceeZ	(	(B)H |H::b>>X%%%%%%r&   c                     t                      } d}|dd          }|                     d          |k    sJ d}|dd          }|                     d          |k    sJ |                     t          d                    }t          d                    |                                                    }|                     |          |k    sJ d	|vsJ d
}|dd          }|                     |dz
            |k    sJ d}|dd          }|                     |dz
            |k    sJ d}|dd          }|                     |dz
            |k    sJ d S )Nz
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
                   in...
                   multi_class='warn', n_jobs=None, random_state=None,
                   solver='warn', tol=0.0001, verbose=0, warm_start=False)r      )
N_CHAR_MAXzQ
Lo...
                   solver='warn', tol=0.0001, verbose=0, warm_start=False)r   inf z...a  
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
                   intercept_scaling=1, l1_ratio=0,...00,
                   multi_class='warn', n_jobs=None, random_state=None,
                   solver='warn', tol=0.0001, verbose=0, warm_start=False)r   a   
LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
                   intercept_scaling=1, l1_ratio=0, max...r=100,
                   multi_class='warn', n_jobs=None, random_state=None,
                   solver='warn', tol=0.0001, verbose=0, warm_start=False)r   r   )r   r   r   lenjoinsplit)r   r   	full_repr
n_nonblanks       r$   test_bruteforce_ellipsisr   #  s   
 
		BNH |H;;#;&&(2222NH |H;;!;$$0000 uU||44IRWWY__..//00J;;*;--::::	!!!!
NH
 |H;;*r/;22h>>>>NH
 |H;;*q.;11X====
NH
 |H;;*q.;11X======r&   c                  `    t                                          t                                 d S r   )r   pprintr   r(   r&   r$   test_builtin_prettyprinterr   j  s)    
 OO-//00000r&   c                      G d dt                     }  | ddd           }d}|                                |k    sJ t          d          5  d	}|                                |k    sJ 	 d d d            d S # 1 swxY w Y   d S )
Nc                   .     e Zd ZddZd fd	Zd Z xZS )	'test_kwargs_in_init.<locals>.WithKWargs
willchange	unchangedc                 J    || _         || _        i | _         | j        di | d S )Nr(   )ab_other_params
set_params)r#   r   r   kwargss       r$   r%   z0test_kwargs_in_init.<locals>.WithKWargs.__init__{  s6    DFDF!#DDO%%f%%%%%r&   Tc                     t                                          |          }|                    | j                   |S )N)deep)super
get_paramsupdater   )r#   r   params	__class__s      r$   r   z2test_kwargs_in_init.<locals>.WithKWargs.get_params  s7    WW''T'22FMM$,---Mr&   c                 p    |                                 D ] \  }}t          | ||           || j        |<   !| S r   )itemssetattrr   )r#   r   keyvalues       r$   r   z2test_kwargs_in_init.<locals>.WithKWargs.set_params  sD    $llnn 0 0
Uc5)))*/"3''Kr&   )r   r   )T)r-   r.   r/   r%   r   r   __classcell__)r   s   @r$   
WithKWargsr   x  s`        	& 	& 	& 	&	 	 	 	 	 	
	 	 	 	 	 	 	r&   r  	somethingabcd)r   cdz+WithKWargs(a='something', c='abcd', d=None)Fr   z:WithKWargs(a='something', b='unchanged', c='abcd', d=None))r   r   r   )r  estr   s      r$   test_kwargs_in_initr	  r  s        ]   ( *{f
5
5
5C<H<<>>X%%%%	5	1	1	1 * *O||~~)))))* * * * * * * * * * * * * * * * * *s   A99A= A=c                      G fddt           t                     t                                               d                    } t          d          5  t	          |            j        }d d d            n# 1 swxY w Y   d_        t          d          5  t	          |            j        }d d d            n# 1 swxY w Y   ||k    sJ d S )Nc                   6     e Zd ZdZddZ fdZddZ xZS ):test_complexity_print_changed_only.<locals>.DummyEstimatorr   Nc                     || _         d S r   )r<   )r#   r<   s     r$   r%   zCtest_complexity_print_changed_only.<locals>.DummyEstimator.__init__  s    &DNNNr&   c                 d    xj         dz  c_         t                                                      S )Nr   )nb_times_repr_calledr   r   )r#   DummyEstimatorr   s    r$   r   zCtest_complexity_print_changed_only.<locals>.DummyEstimator.__repr__  s-    //14//77##%%%r&   c                     |S r   r(   r7   s      r$   r8   zDtest_complexity_print_changed_only.<locals>.DummyEstimator.transform  s    Hr&   r   )r-   r.   r/   r  r%   r   r8   r  )r   r  s   @r$   r  r    sl         	' 	' 	' 	'	& 	& 	& 	& 	& 	&	 	 	 	 	 	 	 	r&   r  passthroughFr   r   T)r   r   r
   r   r   r  )r<    nb_repr_print_changed_only_falsenb_repr_print_changed_only_truer  s      @r$   "test_complexity_print_changed_onlyr    s         )=    nn^^%5%5668H8H-XX I 
5	1	1	1 O OY+9+N(O O O O O O O O O O O O O O O +,N'	4	0	0	0 N NY*8*M'N N N N N N N N N N N N N N N ,/NNNNNNNs$    BB
B%CCC),r   r   r   numpyrd   pytestsklearnr   sklearn.baser   r   sklearn.feature_selectionr   r   sklearn.linear_modelr	   sklearn.pipeliner
   sklearn.utils._pprintr   r   r1   r:   rA   rN   rg   rl   r   r   r   r   r   r   r   markparametrizer   r   r   r   r   r   r	  r  r(   r&   r$   <module>r      s   				                  " " " " " " 8 8 8 8 8 8 8 8 7 7 7 7 7 7 7 7 5 5 5 5 5 5 * * * * * * 9 9 9 9 9 9" " " " " " " "J    %}       -   5 5 5 5 5= 5 5 58% % % % %m % % %P    }   ) ) ) ) )- ) ) )D) ) ) ) )- ) ) )(    -   8    M     5)))
% 
% *)
%S S S: 5)))+ + *)+( 5)))!& !& *)!&H &)	
	 	+ +	 	+ 5)))% % *)%4 5)))? ? *)?D 5)))W& W& *)W&t 5)))C> C> *)C>L1 1 1!* !* !*HO O O O Or&   