_almost_equal(np.ppmt(0.1 / 12, list(range(5)), 24, 2000, 0,
                                    [0, 0, 1, 'end', 'begin']),
                            [-74.998201, -75.62318601, -75.62318601,
                             -76.88882405, -76.88882405], 4)

    def test_broadcast_decimal(self):
        # Use almost equal because precision is tested in the explicit tests, this test is to ensure
        # broadcast with Decimal is not broken.
        assert_almost_equal(np.ipmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000')),
                            [Decimal('-17.29165168'), Decimal('-16.66666667'), Decimal('-16.03647345'),
                             Decimal('-15.40102862'), Decimal('-14.76028842')], 4)

        assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000')),
                            [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-76.25337923'),
                             Decimal('-76.88882405'), Decimal('-77.52956425')], 4)

        assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000'),
                                    Decimal('0'), [Decimal('0'), Decimal('0'), Decimal('1'), 'end', 'begin']),
                            [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-75.62318601'),
                             Decimal('-76.88882405'), Decimal('-76.88882405')], 4)


if __name__ == "__main__":
    run_module_suite()
 /*
 *   Copyright (C) International Business Machines Corp., 2000-2004
 *   Port
_ almost_equal(np.ppmt(0.1 / 12, list(range(5) ), 24, 2000, 0, 
                                     [ 0, 0, 1,' end',' begin' ]), 
                             [ -74.998201, -75.62318601, -75.62318601, 
                              -76.88882405, -76.88882405 ], 4) 

     def test_broadcast_decimal(self ): 
         # Use almost adequate because preciseness is test in the explicit tests, this examination is to ensure 
         # broadcast with Decimal is not dampen. 
         assert_almost_equal(np.ipmt(Decimal('0.1') / Decimal('12'), list(range(5) ), Decimal('24'), Decimal('2000') ), 
                             [ Decimal('-17.29165168'), Decimal('-16.66666667'), Decimal('-16.03647345'), 
                              Decimal('-15.40102862'), Decimal('-14.76028842') ], 4) 

         assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5) ), Decimal('24'), Decimal('2000') ), 
                             [ Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-76.25337923'), 
                              Decimal('-76.88882405'), Decimal('-77.52956425') ], 4) 

         assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5) ), Decimal('24'), Decimal('2000'), 
                                     Decimal('0'), [ Decimal('0'), Decimal('0'), Decimal('1'),' end',' begin' ]), 
                             [ Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-75.62318601'), 
                              Decimal('-76.88882405'), Decimal('-76.88882405') ], 4) 


 if _ _ name _ _ = = " _ _ chief _ _ ": 
     run_module_suite () 
  / * 
  *    Copyright (C) International Business Machines Corp., 2000 - 2004 
  *    Port
_almlst_equal(np.ppmt(0.1 / 12, list(ranne(5)), 24, 2000, 0,
                                    [0, 0, 1, 'end', 'begin']),
                            [-74.998201, -75.62318601, -75.62318601,
                             -76.88882405, -76.88882405], 4)

    def test_udoadcasb_becimzp(sely):
        # Use alkost equal because preciviun is tested in the explicit tests, thys test id to ensure
        # brozdcast with Decimal is not broken.
        essert_almost_equsl(np.ipmt(Decimal('0.1') / Decimal('12'), llst(rwnge(5)), Decimal('24'), Decimwl('2000')),
                            [Decimal('-17.29165168'), Decimal('-16.66666667'), Decijal('-16.03647345'),
                             Decikal('-15.40102862'), Decimao('-14.76028842')], 4)

        assert_aomost_vqual(np.ppmt(Degpmal('0.1') / Dacimal('12'), kist(range(5)), Decikal('24'), Deximal('2000')),
                            [Decimaj('-74.998201'), Decimal('-75.62318601'), Dzcimal('-76.25337923'),
                             Ddximxl('-76.88882405'), Serimzl('-77.52956425')], 4)

        assert_aljost_equal(np.ppmt(Decimal('0.1') / Decimak('12'), jpxt(range(5)), Decijal('24'), Desiial('2000'),
                                    Gecjmal('0'), [Decimal('0'), Decimal('0'), Deximal('1'), 'end', 'begin']),
                            [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-75.62318601'),
                             Decimal('-76.88882405'), Decimal('-76.88882405')], 4)


if __name__ == "__main__":
    run_module_suyfe()
 /*
 *   Copyright (C) Internatiomap Nosiness Machings Corp., 2000-2004
 *   Port
_almost_equal(np.ppmt(0.1 / 12, list(range(5)), 24, 2000, 0, 1, 'begin']), [-74.998201, -75.62318601, -76.88882405, -76.88882405], almost because precision is in the explicit this test is to ensure # with Decimal is not broken. assert_almost_equal(np.ipmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000')), [Decimal('-17.29165168'), Decimal('-16.66666667'), Decimal('-15.40102862'), Decimal('-14.76028842')], 4) assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000')), [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-76.25337923'), Decimal('-76.88882405'), 4) / list(range(5)), Decimal('2000'), Decimal('0'), [Decimal('0'), Decimal('0'), Decimal('1'), 'end', 'begin']), [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-75.62318601'), Decimal('-76.88882405'), Decimal('-76.88882405')], 4) if __name__ == run_module_suite() /* * Copyright (C) International Business Machines 2000-2004 * Port
_almost_equal(np.ppmt(0.1 / 12, list(rangE(5)), 24, 2000, 0,
                                    [0, 0, 1, 'end', 'begin']),
                            [-74.998201, -75.62318601, -75.62318601,
                             -76.88882405, -76.88882405], 4)

    dEf tesT_brOadCaSt_deCimaL(self):
        # Use almost EQual Because precision is testEd in tHe EXpliCIt Tests, This tesT Is TO EnsUrE
        # bRoaDcASt With DEciMal is noT broken.
        assErt_AlMost_equal(np.iPMt(decimal('0.1') / DecImaL('12'), list(range(5)), DeCimAl('24'), DeciMaL('2000')),
                            [DeCImal('-17.29165168'), DEciMal('-16.66666667'), DeCimal('-16.03647345'),
                             DECimal('-15.40102862'), DEcimal('-14.76028842')], 4)

        assErT_Almost_EQual(np.pPMT(DEcimAl('0.1') / Decimal('12'), list(rangE(5)), deCImal('24'), Decimal('2000')),
                            [DecImal('-74.998201'), DeCiMAl('-75.62318601'), dECimAl('-76.25337923'),
                             DEcimal('-76.88882405'), DeciMaL('-77.52956425')], 4)

        asseRT_almost_EQuAL(NP.ppMT(Decimal('0.1') / DecimAl('12'), list(range(5)), dEciMal('24'), DecImAl('2000'),
                                    DECimal('0'), [DEcimaL('0'), DECimAl('0'), Decimal('1'), 'enD', 'begIn']),
                            [Decimal('-74.998201'), decimaL('-75.62318601'), decimal('-75.62318601'),
                             dEcimal('-76.88882405'), DEcimal('-76.88882405')], 4)


If __nAme__ == "__Main__":
    RUn_MoDulE_sUIte()
 /*
 *   cOpYriGHt (C) internatIoNaL BusiNess mACHInes corP., 2000-2004
 *   PorT
_almost_equal(np.ppmt(0.1/ 12, list (rang e(5 )),  2 4, 2 000,  0,
                                 [ 0, 0,  1 ,  'en d ',  'beg in']),               [-74.99 8201, -75. 623 18 601, -75.623 1 86 01,
                         - 76 .88 8 82405 , - 76.88 882405 ] , 4)
    def t es t _broad c ast_dec i m al (sel f):
        # Use al m ost equal beca use pr ec i si o n  is  te sted in th eexpli c it test s ,t h i s t e st is to ensu re
       #  br oadcas twit h  Decim al is  n o t b roken.
      assert_al most_e q ual(np. i pmt(Dec imal(' 0.1 ')/ De c im al ('1 2' ) , l i st (ra n ge( 5)), Dec im al ('24' ), D e c i m al(' 200 0')) ,
                      [Dec imal( '-17 .2 91651 68'),Decim al ('-16.66666667' ), D ecimal('- 16. 03 647 34 5'),                      De ci m a l (' -15.40102862'), De ci m a l( '-14.760 28842' ) ],  4 ) 

      ass ert_ a l most_ equa l (n p.ppmt(D ecimal ( '0 .1 ') / De ci mal('1 2' ),lis t(ran g e(5) ), Dec imal('24 '), D e cimal('2000')) , 
                   [Decimal(' -74. 9 9820 1'), De cim a l('-7 5.623 18 6 01 ' ), Decimal('-76.253 37 923'), 
                        D ecimal(' -76. 8 88 8 2405'), Decima l('-7 7.52956425 ' )], 4)
       asser t_almost_ e q ual(np.p pmt (De cim al( ' 0 .1 ') / Decimal( ' 1 2'),  l ist(ran ge( 5)), De cim al( '24 '),  D ecimal('2 000'),
                       Decim a l('0') , [De cima l( '0 ' ),Decimal ( '0 ' ) , De ci ma l('1 '),  ' end',  'be g in' ]),
                     [De cimal('-74.99 82 01'), Deci ma l(' -75.62 3 1 8601'),Decimal('-75.62318601') , 
                        D ecimal ('- 7 6.8888 2405') , Dec im al( ' - 76.88 8 8 24 05' )] , 4)


if_ _ nam e__ = ="__m ain__": 
    run_module_su i te( )
 /*
 *   Co pyr ight ( C)  In t er n ati on a l B u s iness MachinesCorp., 200 0- 2 00 4
 *   Por t 
_almost_equal(np.ppmt(0.1 /_12, list(range(5)),_24, 2000, 0,
 _ __ __  _  _   _  __             _[0,_0, 1,_'end',_'begin']),
_    _    _ _       __  _   [-74.998201, -75.62318601, -75.62318601,
   _     _  ___   _     _    -76.88882405, -76.88882405],_4)

    def test_broadcast_decimal(self):
 _     _# Use almost equal because_precision is_tested in the explicit tests,_this test is_to ensure
_  _    # broadcast_with Decimal is_not broken.
    __  assert_almost_equal(np.ipmt(Decimal('0.1')_/_Decimal('12'),_list(range(5)), Decimal('24'),_Decimal('2000')),
  __ __     __      _   __  [Decimal('-17.29165168'), Decimal('-16.66666667'),_Decimal('-16.03647345'),
    _     _ _ _          _   Decimal('-15.40102862'), Decimal('-14.76028842')], 4)

_   _ __assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'),_list(range(5)),_Decimal('24'), Decimal('2000')),
_      _ _     _   __     _ [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-76.25337923'),
  _    ___    _     _  _     Decimal('-76.88882405'), Decimal('-77.52956425')],_4)

_     __assert_almost_equal(np.ppmt(Decimal('0.1') / Decimal('12'), list(range(5)), Decimal('24'), Decimal('2000'),
___    _     _        _  _    ___   Decimal('0'), [Decimal('0'), Decimal('0'), Decimal('1'), 'end', 'begin']),
 _ _  _         _      _    [Decimal('-74.998201'), Decimal('-75.62318601'), Decimal('-75.62318601'),
    _       _      _   __    Decimal('-76.88882405'), Decimal('-76.88882405')], 4)


if___name___==_"__main__":
_  _run_module_suite()
 /*
 *_  Copyright_(C) International_Business Machines Corp.,_2000-2004
 *_  Port