1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance 9 * with the License. You may obtain a copy of the License at 10 * 11 * http://www.apache.org/licenses/LICENSE-2.0 12 * 13 * Unless required by applicable law or agreed to in writing, 14 * software distributed under the License is distributed on an 15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16 * KIND, either express or implied. See the License for the 17 * specific language governing permissions and limitations 18 * under the License. 19 * 20 *************************************************************/ 21 22 23 24#ifndef __com_sun_star_sheet_NoConvergenceException_idl__ 25#include <com/sun/star/sheet/NoConvergenceException.idl> 26#endif 27 28#include <com/sun/star/uno/XInterface.idl> 29#include <com/sun/star/beans/XPropertySet.idl> 30#include <com/sun/star/sheet/LocalizedName.idl> 31 32module com 33{ 34module sun 35{ 36module star 37{ 38module sheet 39{ 40module addin 41{ 42 interface XCompatibilityNames : com::sun::star::uno::XInterface 43 { 44 /// getCompatibilityNames. 45 sequence< com::sun::star::sheet::LocalizedName > getCompatibilityNames ( [in] string aProgrammaticName ); 46 }; 47 48 /** 49 * Interface with analysis functions. 50 */ 51 interface XAnalysis : com::sun::star::uno::XInterface 52 { 53 /// _test. 54// double get_Test( 55// [in] com::sun::star::beans::XPropertySet xOptions, 56// [in] long Mode, [in] double f1, [in] double f2, [in] double f3 ); 57 58 /// workday. 59 long getWorkday( 60 [in] com::sun::star::beans::XPropertySet xOptions, 61 [in] long nStartDate, [in] long nDays, [in] any aHolidays ) 62 raises( com::sun::star::lang::IllegalArgumentException ); 63 64 /// yearfrac. 65 double getYearfrac( 66 [in] com::sun::star::beans::XPropertySet xOptions, 67 [in] long StartDate, [in] long EndDate, [in] any Mode ) 68 raises( com::sun::star::lang::IllegalArgumentException ); 69 70 /// edate. 71 long getEdate( 72 [in] com::sun::star::beans::XPropertySet xOptions, 73 [in] long nStartDate, [in] long nNumOfMonths ) 74 raises( com::sun::star::lang::IllegalArgumentException ); 75 76 /// weeknum. 77 long getWeeknum( 78 [in] com::sun::star::beans::XPropertySet xOptions, 79 [in] long nStartDate, [in] long nMode ) 80 raises( com::sun::star::lang::IllegalArgumentException ); 81 82 /// eomonth. 83 long getEomonth( 84 [in] com::sun::star::beans::XPropertySet xOptions, 85 [in] long nStartDate, [in] long nMonths ) 86 raises( com::sun::star::lang::IllegalArgumentException ); 87 88 /// networkdays. 89 long getNetworkdays( 90 [in] com::sun::star::beans::XPropertySet xOptions, 91 [in] long StartDate, [in] long EndDate, [in] any Holidays ) 92 raises( com::sun::star::lang::IllegalArgumentException ); 93 94 /// iseven. 95 long getIseven( [in] long nValue ) 96 raises( com::sun::star::lang::IllegalArgumentException ); 97 98 /// isodd. 99 long getIsodd( [in] long nValue ) 100 raises( com::sun::star::lang::IllegalArgumentException ); 101 102 /// multinomial. 103 double getMultinomial( 104 [in] com::sun::star::beans::XPropertySet xOptions, 105 [in] sequence< sequence< long > > aValList, 106 [in] sequence< any > aOptVLst ) 107 raises( com::sun::star::lang::IllegalArgumentException ); 108 109 /// seriessum. 110 double getSeriessum( 111 [in] double X, [in] double N, [in] double M, 112 [in] sequence< sequence< double > > CoeffList ) 113 raises( com::sun::star::lang::IllegalArgumentException ); 114 115 // quotient. 116 double getQuotient( [in] double Num, [in] double Denum ) 117 raises( com::sun::star::lang::IllegalArgumentException ); 118 119 // mround. 120 double getMround( [in] double Number, [in] double Multiple ) 121 raises( com::sun::star::lang::IllegalArgumentException ); 122 123 // sqrtpi. 124 double getSqrtpi( [in] double Number ) 125 raises( com::sun::star::lang::IllegalArgumentException ); 126 127 // randbetween. 128 double getRandbetween( [in] double Min, [in] double Max ) 129 raises( com::sun::star::lang::IllegalArgumentException ); 130 131 /// gcd. 132 double getGcd( 133 [in] com::sun::star::beans::XPropertySet xOptions, 134 [in] sequence< sequence< double > > FirstValList, 135 [in] sequence< any > OptionalValList ) 136 raises( com::sun::star::lang::IllegalArgumentException ); 137 138 /// lcm. 139 double getLcm( 140 [in] com::sun::star::beans::XPropertySet xOptions, 141 [in] sequence< sequence< double > > FirstValList, 142 [in] sequence< any > OptionalValList ) 143 raises( com::sun::star::lang::IllegalArgumentException ); 144 145 /// besseli. 146 double getBesseli( [in] double Num, [in] long Order ) 147 raises( com::sun::star::lang::IllegalArgumentException, 148 com::sun::star::sheet::NoConvergenceException ); 149 150 /// besselj. 151 double getBesselj( [in] double Num, [in] long Order ) 152 raises( com::sun::star::lang::IllegalArgumentException, 153 com::sun::star::sheet::NoConvergenceException ); 154 155 /// besselk. 156 double getBesselk( [in] double Num, [in] long Order ) 157 raises( com::sun::star::lang::IllegalArgumentException, 158 com::sun::star::sheet::NoConvergenceException ); 159 160 /// bessely. 161 double getBessely( [in] double Num, [in] long Order ) 162 raises( com::sun::star::lang::IllegalArgumentException, 163 com::sun::star::sheet::NoConvergenceException ); 164 165 /// bin2oct. 166 string getBin2Oct( 167 [in] com::sun::star::beans::XPropertySet xOptions, 168 [in] string BinaryNum, [in] any Places ) 169 raises( com::sun::star::lang::IllegalArgumentException ); 170 171 /// bin2dec. 172 double getBin2Dec( [in] string BinaryNum ) 173 raises( com::sun::star::lang::IllegalArgumentException ); 174 175 /// bin2hex. 176 string getBin2Hex( 177 [in] com::sun::star::beans::XPropertySet xOptions, 178 [in] string BinaryNum, [in] any Places ) 179 raises( com::sun::star::lang::IllegalArgumentException ); 180 181 /// oct2bin. 182 string getOct2Bin( 183 [in] com::sun::star::beans::XPropertySet xOptions, 184 [in] string OctalNum, [in] any Places ) 185 raises( com::sun::star::lang::IllegalArgumentException ); 186 187 /// oct2dec. 188 double getOct2Dec( [in] string OctalNum ) 189 raises( com::sun::star::lang::IllegalArgumentException ); 190 191 /// oct2hex. 192 string getOct2Hex( 193 [in] com::sun::star::beans::XPropertySet xOptions, 194 [in] string OctalNum, [in] any Places ) 195 raises( com::sun::star::lang::IllegalArgumentException ); 196 197 /// dec2bin. 198 string getDec2Bin( 199 [in] com::sun::star::beans::XPropertySet xOptions, 200 [in] long Value, [in] any Places ) 201 raises( com::sun::star::lang::IllegalArgumentException ); 202 203 /// dec2oct. 204 string getDec2Oct( 205 [in] com::sun::star::beans::XPropertySet xOptions, 206 [in] long Value, [in] any Places ) 207 raises( com::sun::star::lang::IllegalArgumentException ); 208 209 /// dec2hex. 210 string getDec2Hex( 211 [in] com::sun::star::beans::XPropertySet xOptions, 212 [in] double Value, [in] any Places ) 213 raises( com::sun::star::lang::IllegalArgumentException ); 214 215 /// hex2bin. 216 string getHex2Bin( 217 [in] com::sun::star::beans::XPropertySet xOptions, 218 [in] string HexadecimalValue, [in] any Places ) 219 raises( com::sun::star::lang::IllegalArgumentException ); 220 221 /// hex2dec. 222 double getHex2Dec( [in] string HexadecimalValue ) 223 raises( com::sun::star::lang::IllegalArgumentException ); 224 225 /// hex2oct. 226 string getHex2Oct( 227 [in] com::sun::star::beans::XPropertySet xOptions, 228 [in] string HexadecimalValue, [in] any Places ) 229 raises( com::sun::star::lang::IllegalArgumentException ); 230 231 /// delta. 232 long getDelta( 233 [in] com::sun::star::beans::XPropertySet xOptions, 234 [in] double Num1, [in] any Num2 ) 235 raises( com::sun::star::lang::IllegalArgumentException ); 236 237 /// erf. 238 double getErf( 239 [in] com::sun::star::beans::XPropertySet xOptions, 240 [in] double LowerLimit, [in] any UpperLimit ) 241 raises( com::sun::star::lang::IllegalArgumentException ); 242 243 /// erfc. 244 double getErfc( [in] double LowerLimit ) 245 raises( com::sun::star::lang::IllegalArgumentException ); 246 247 /// gestep. 248 long getGestep( 249 [in] com::sun::star::beans::XPropertySet xOptions, 250 [in] double Num, [in] any Step ) 251 raises( com::sun::star::lang::IllegalArgumentException ); 252 253 /// factdouble. 254 double getFactdouble( [in] long Num ) 255 raises( com::sun::star::lang::IllegalArgumentException ); 256 257 /// imabs. 258 double getImabs( [in] string Num ) 259 raises( com::sun::star::lang::IllegalArgumentException ); 260 261 /// imaginary. 262 double getImaginary( [in] string Num ) 263 raises( com::sun::star::lang::IllegalArgumentException ); 264 265 /// impower. 266 string getImpower( [in] string Num, [in] double Power ) 267 raises( com::sun::star::lang::IllegalArgumentException ); 268 269 /// imargument. 270 double getImargument( [in] string Num ) 271 raises( com::sun::star::lang::IllegalArgumentException ); 272 273 /// imcos. 274 string getImcos( [in] string Num ) 275 raises( com::sun::star::lang::IllegalArgumentException ); 276 277 /// imdiv. 278 string getImdiv( [in] string Num1, [in] string Num2 ) 279 raises( com::sun::star::lang::IllegalArgumentException ); 280 281 /// imexp. 282 string getImexp( [in] string Num ) 283 raises( com::sun::star::lang::IllegalArgumentException ); 284 285 /// imconjugate. 286 string getImconjugate( [in] string Num ) 287 raises( com::sun::star::lang::IllegalArgumentException ); 288 289 /// imln. 290 string getImln( [in] string Num ) 291 raises( com::sun::star::lang::IllegalArgumentException ); 292 293 /// imlog10. 294 string getImlog10( [in] string Num ) 295 raises( com::sun::star::lang::IllegalArgumentException ); 296 297 /// imlog2. 298 string getImlog2( [in] string Num ) 299 raises( com::sun::star::lang::IllegalArgumentException ); 300 301 /// improduct. 302 string getImproduct( 303 [in] com::sun::star::beans::XPropertySet xOptions, 304 [in] sequence< sequence< string > > Num1, 305 [in] sequence< any > NumberList ) 306 raises( com::sun::star::lang::IllegalArgumentException ); 307 308 /// imreal. 309 double getImreal( [in] string Num ) 310 raises( com::sun::star::lang::IllegalArgumentException ); 311 312 /// imsin. 313 string getImsin( [in] string Num ) 314 raises( com::sun::star::lang::IllegalArgumentException ); 315 316 /// imsub. 317 string getImsub( [in] string Num1, [in] string Num2 ) 318 raises( com::sun::star::lang::IllegalArgumentException ); 319 320 /// imsum. 321 string getImsum( 322 [in] com::sun::star::beans::XPropertySet xOptions, 323 [in] sequence< sequence< string > > Num1, 324 [in] sequence< any > OptNums ) 325 raises( com::sun::star::lang::IllegalArgumentException ); 326 327 /// imsqrt. 328 string getImsqrt( [in] string Num ) 329 raises( com::sun::star::lang::IllegalArgumentException ); 330 331 /// imtan. 332 string getImtan( [in] string Num ) 333 raises( com::sun::star::lang::IllegalArgumentException ); 334 335 /// imsec. 336 string getImsec( [in] string Num) 337 raises( com::sun::star::lang::IllegalArgumentException ); 338 339 /// imcsc. 340 string getImcsc( [in] string Num ) 341 raises( com::sun::star::lang::IllegalArgumentException ); 342 343 /// imcot. 344 string getImcot( [in] string Num ) 345 raises( com::sun::star::lang::IllegalArgumentException ); 346 347 /// imsinh. 348 string getImsinh( [in] string Num ) 349 raises( com::sun::star::lang::IllegalArgumentException ); 350 351 /// imcosh. 352 string getImcosh( [in] string Num ) 353 raises( com::sun::star::lang::IllegalArgumentException ); 354 355 /// imsech. 356 string getImsech( [in] string Num) 357 raises( com::sun::star::lang::IllegalArgumentException ); 358 359 /// imcsch. 360 string getImcsch( [in] string Num ) 361 raises( com::sun::star::lang::IllegalArgumentException ); 362 363 /// complex. 364 string getComplex( [in] double Real, [in] double Imaginary, [in] any Suffix ) 365 raises( com::sun::star::lang::IllegalArgumentException ); 366 367 /// convert. 368 double getConvert( [in] double Value, [in] string FromUnit, [in] string ToUnit ) 369 raises( com::sun::star::lang::IllegalArgumentException ); 370 371 372 /// amordegrc. 373 double getAmordegrc( 374 [in] com::sun::star::beans::XPropertySet xOptions, 375 [in] double Cost, [in] long Date, [in] long FirstPer, [in] double RestVal, 376 [in] double Periode, [in] double Rate, [in] any Base ) 377 raises( com::sun::star::lang::IllegalArgumentException ); 378 379 /// amorlinc. 380 double getAmorlinc( 381 [in] com::sun::star::beans::XPropertySet xOptions, 382 [in] double Cost, [in] long Date, [in] long FirstPer, [in] double RestVal, 383 [in] double Periode, [in] double Rate, [in] any Base ) 384 raises( com::sun::star::lang::IllegalArgumentException ); 385 386 /// accrint. 387 double getAccrint( 388 [in] com::sun::star::beans::XPropertySet xOptions, 389 [in] long Issue, [in] long FirstInterest, [in] long Settlement, [in] double Rate, 390 [in] any Value, [in] long Frequency, [in] any Base ) 391 raises( com::sun::star::lang::IllegalArgumentException ); 392 393 /// accrintm. 394 double getAccrintm( 395 [in] com::sun::star::beans::XPropertySet xOptions, 396 [in] long Issue, [in] long Settlement, [in] double Rate, [in] any Value, [in] any Base ) 397 raises( com::sun::star::lang::IllegalArgumentException ); 398 399 /// received. 400 double getReceived( 401 [in] com::sun::star::beans::XPropertySet xOptions, 402 [in] long Settlement, [in] long Maturity, [in] double Investment, [in] double Discount, 403 [in] any Base ) 404 raises( com::sun::star::lang::IllegalArgumentException ); 405 406 /// disc. 407 double getDisc( 408 [in] com::sun::star::beans::XPropertySet xOptions, 409 [in] long Settlement, [in] long Maturity, [in] double Price, [in] double Redemption, 410 [in] any Base ) 411 raises( com::sun::star::lang::IllegalArgumentException ); 412 413 /// duration. 414 double getDuration( 415 [in] com::sun::star::beans::XPropertySet xOptions, 416 [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Yield, 417 [in] long Frequncy, [in] any Base ) 418 raises( com::sun::star::lang::IllegalArgumentException ); 419 420 /// effect. 421 double getEffect( [in] double Nomial, [in] long NumOfPeriods ) 422 raises( com::sun::star::lang::IllegalArgumentException ); 423 424 /// cumprinc. 425 double getCumprinc( 426 [in] double Rate, [in] long NumOfPeriods, [in] double Val, [in] long StartPeriode, 427 [in] long EndPeriode, [in] long PayType ) 428 raises( com::sun::star::lang::IllegalArgumentException ); 429 430 /// cumipmt. 431 double getCumipmt( 432 [in] double Rate, [in] long NumOfPeriods, [in] double Val, [in] long StartPeriode, 433 [in] long EndPeriode, [in] long PayType ) 434 raises( com::sun::star::lang::IllegalArgumentException ); 435 436 /// price. 437 double getPrice( 438 [in] com::sun::star::beans::XPropertySet xOptions, 439 [in] long Settlement, [in] long Maturity, [in] double Rate, [in] double Yield, 440 [in] double Redemption, [in] long Frequncy, [in] any Base ) 441 raises( com::sun::star::lang::IllegalArgumentException ); 442 443 /// pricedisc. 444 double getPricedisc( 445 [in] com::sun::star::beans::XPropertySet xOptions, 446 [in] long Settlement, [in] long Maturity, [in] double Discont, [in] double Redemption, 447 [in] any Base ) 448 raises( com::sun::star::lang::IllegalArgumentException ); 449 450 /// pricemat. 451 double getPricemat( 452 [in] com::sun::star::beans::XPropertySet xOptions, 453 [in] long Settlement, [in] long Maturity, [in] long Issue, [in] double Rate, [in] double Yield, 454 [in] any Base ) 455 raises( com::sun::star::lang::IllegalArgumentException ); 456 457 /// mduration. 458 double getMduration( 459 [in] com::sun::star::beans::XPropertySet xOptions, 460 [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Yield, 461 [in] long Frequency, [in] any Base ) 462 raises( com::sun::star::lang::IllegalArgumentException ); 463 464 /// nominal. 465 double getNominal( [in] double Rate, [in] long NumOfPeriods ) 466 raises( com::sun::star::lang::IllegalArgumentException ); 467 468 /// dollarfr. 469 double getDollarfr( [in] double DollarDecimal, [in] long Fraction ) 470 raises( com::sun::star::lang::IllegalArgumentException ); 471 472 /// dollarde. 473 double getDollarde( [in] double DollarFractional, [in] long Fraction ) 474 raises( com::sun::star::lang::IllegalArgumentException ); 475 476 /// yield. 477 double getYield( 478 [in] com::sun::star::beans::XPropertySet xOptions, 479 [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Price, 480 [in] double Redemption, [in] long Frequency, [in] any Base ) 481 raises( com::sun::star::lang::IllegalArgumentException ); 482 483 /// yielddisc. 484 double getYielddisc( 485 [in] com::sun::star::beans::XPropertySet xOptions, 486 [in] long Settlement, [in] long Maturity, [in] double Price, 487 [in] double Redemption, [in] any Base ) 488 raises( com::sun::star::lang::IllegalArgumentException ); 489 490 /// yieldmat. 491 double getYieldmat( 492 [in] com::sun::star::beans::XPropertySet xOptions, 493 [in] long Settlement, [in] long Maturity, [in] long Issue, [in] double Rate, 494 [in] double Price, [in] any Base ) 495 raises( com::sun::star::lang::IllegalArgumentException ); 496 497 /// tbilleq. 498 double getTbilleq( 499 [in] com::sun::star::beans::XPropertySet xOptions, 500 [in] long Settlement, [in] long Maturity, [in] double Discont ) 501 raises( com::sun::star::lang::IllegalArgumentException ); 502 503 /// tbillprice. 504 double getTbillprice( 505 [in] com::sun::star::beans::XPropertySet xOptions, 506 [in] long Settlement, [in] long Maturity, [in] double Discont ) 507 raises( com::sun::star::lang::IllegalArgumentException ); 508 509 /// tbillyield. 510 double getTbillyield( 511 [in] com::sun::star::beans::XPropertySet xOptions, 512 [in] long Settlement, [in] long Maturity, [in] double Price ) 513 raises( com::sun::star::lang::IllegalArgumentException ); 514 515 /// oddfprice. 516 double getOddfprice( 517 [in] com::sun::star::beans::XPropertySet xOptions, 518 [in] long Settlement, [in] long Maturity, [in] long Issue, [in] long FirstCouponDate, 519 [in] double Rate, [in] double Yield, [in] double Redemption, 520 [in] long Frequency, [in] any Base ) 521 raises( com::sun::star::lang::IllegalArgumentException ); 522 523 /// oddfyield. 524 double getOddfyield( 525 [in] com::sun::star::beans::XPropertySet xOptions, 526 [in] long Settlement, [in] long Maturity, [in] long Issue, [in] long FirstCouponDate, 527 [in] double Rate, [in] double Price, [in] double Redemption, 528 [in] long Frequency, [in] any Base ) 529 raises( com::sun::star::lang::IllegalArgumentException ); 530 531 /// oddlprice. 532 double getOddlprice( 533 [in] com::sun::star::beans::XPropertySet xOptions, 534 [in] long Settlement, [in] long Maturity, [in] long LastInterest, 535 [in] double Rate, [in] double Yield, [in] double Redemption, 536 [in] long Frequency, [in] any Base ) 537 raises( com::sun::star::lang::IllegalArgumentException ); 538 539 /// oddlyield. 540 double getOddlyield( 541 [in] com::sun::star::beans::XPropertySet xOptions, 542 [in] long Settlement, [in] long Maturity, [in] long LastInterest, 543 [in] double Rate, [in] double Price, [in] double Redemption, 544 [in] long Frequency, [in] any Base ) 545 raises( com::sun::star::lang::IllegalArgumentException ); 546 547 /// xirr. 548 double getXirr( 549 [in] com::sun::star::beans::XPropertySet xOptions, 550 [in] sequence< sequence< double > > Values, 551 [in] sequence< sequence< long > > Dates, [in] any Guess ) 552 raises( com::sun::star::lang::IllegalArgumentException ); 553 554 /// xnpv. 555 double getXnpv( 556 [in] double Rate, 557 [in] sequence< sequence< double > > Values, 558 [in] sequence< sequence< long > > Dates ) 559 raises( com::sun::star::lang::IllegalArgumentException ); 560 561 /// intrate. 562 double getIntrate( 563 [in] com::sun::star::beans::XPropertySet xOptions, 564 [in] long Settlement, [in] long Maturity, 565 [in] double Investment, [in] double Redemption, [in] any Base ) 566 raises( com::sun::star::lang::IllegalArgumentException ); 567 568 /// coupncd. 569 double getCoupncd( 570 [in] com::sun::star::beans::XPropertySet xOptions, 571 [in] long Settlement, [in] long Maturity, 572 [in] long Frequency, [in] any Base ) 573 raises( com::sun::star::lang::IllegalArgumentException ); 574 575 /// coupdays. 576 double getCoupdays( 577 [in] com::sun::star::beans::XPropertySet xOptions, 578 [in] long Settlement, [in] long Maturity, 579 [in] long Frequency, [in] any Base ) 580 raises( com::sun::star::lang::IllegalArgumentException ); 581 582 583 /// coupdaysnc. 584 double getCoupdaysnc( 585 [in] com::sun::star::beans::XPropertySet xOptions, 586 [in] long Settlement, [in] long Maturity, 587 [in] long Frequency, [in] any Base ) 588 raises( com::sun::star::lang::IllegalArgumentException ); 589 590 /// coupdaybs. 591 double getCoupdaybs( 592 [in] com::sun::star::beans::XPropertySet xOptions, 593 [in] long Settlement, [in] long Maturity, 594 [in] long Frequency, [in] any Base ) 595 raises( com::sun::star::lang::IllegalArgumentException ); 596 597 /// couppcd. 598 double getCouppcd( 599 [in] com::sun::star::beans::XPropertySet xOptions, 600 [in] long Settlement, [in] long Maturity, 601 [in] long Frequency, [in] any Base ) 602 raises( com::sun::star::lang::IllegalArgumentException ); 603 604 /// coupnum. 605 double getCoupnum( 606 [in] com::sun::star::beans::XPropertySet xOptions, 607 [in] long Settlement, [in] long Maturity, 608 [in] long Frequency, [in] any Base ) 609 raises( com::sun::star::lang::IllegalArgumentException ); 610 611 /// fvschedule. 612 double getFvschedule( [in] double Principal, [in] sequence< sequence< double > > Schedule ) 613 raises( com::sun::star::lang::IllegalArgumentException ); 614 }; 615 616 service Analysis 617 { 618 // exported interfaces: 619 interface XCompatibilityNames; 620 interface XAnalysis; 621 }; 622}; 623}; 624}; 625}; 626}; 627 628