Lines Matching refs:decNumber

217     #error decNumber.c: DECUSE64 must be 1 when DECDPUN>4
224 static decNumber * decAddOp(decNumber *, const decNumber *, const decNumber *,
227 static uInt decCheckMath(const decNumber *, decContext *, uInt *);
228 static void decApplyRound(decNumber *, decContext *, Int, uInt *);
229 static Int decCompare(const decNumber *lhs, const decNumber *rhs, Flag);
230 static decNumber * decCompareOp(decNumber *, const decNumber *,
231 const decNumber *, decContext *,
233 static void decCopyFit(decNumber *, const decNumber *, decContext *,
235 static decNumber * decDecap(decNumber *, Int);
236 static decNumber * decDivideOp(decNumber *, const decNumber *,
237 const decNumber *, decContext *, Flag, uInt *);
238 static decNumber * decExpOp(decNumber *, const decNumber *,
240 static void decFinalize(decNumber *, decContext *, Int *, uInt *);
242 static Int decGetInt(const decNumber *);
243 static decNumber * decLnOp(decNumber *, const decNumber *,
245 static decNumber * decMultiplyOp(decNumber *, const decNumber *,
246 const decNumber *, decContext *,
248 static decNumber * decNaNs(decNumber *, const decNumber *,
249 const decNumber *, decContext *, uInt *);
250 static decNumber * decQuantizeOp(decNumber *, const decNumber *,
251 const decNumber *, decContext *, Flag,
254 static void decSetCoeff(decNumber *, decContext *, const Unit *,
256 static void decSetMaxValue(decNumber *, decContext *);
257 static void decSetOverflow(decNumber *, decContext *, uInt *);
258 static void decSetSubnormal(decNumber *, decContext *, Int *, uInt *);
261 static void decStatus(decNumber *, uInt, decContext *);
262 static void decToString(const decNumber *, char[], Flag);
263 static decNumber * decTrim(decNumber *, decContext *, Flag, Int *);
273 static void decFinish(decNumber *, decContext *, Int *, uInt *);
274 static decNumber * decRoundOperand(const decNumber *, decContext *, uInt *);
310 #define DECUNRESU ((decNumber *)(void *)0xffffffff)
311 #define DECUNUSED ((const decNumber *)(void *)0xffffffff)
313 static Flag decCheckOperands(decNumber *, const decNumber *,
314 const decNumber *, decContext *);
315 static Flag decCheckNumber(const decNumber *);
316 static void decCheckInexact(const decNumber *, decContext *);
321 void decNumberShow(const decNumber *); /* displays the components of a number */
338 decNumber * decNumberFromInt32(decNumber *dn, Int in) { in decNumberFromInt32()
351 decNumber * decNumberFromUInt32(decNumber *dn, uInt uin) { in decNumberFromUInt32()
373 Int decNumberToInt32(const decNumber *dn, decContext *set) { in decNumberToInt32()
409 uInt decNumberToUInt32(const decNumber *dn, decContext *set) { in decNumberToUInt32()
438 decNumber *decNumberFromInt64(decNumber *dn, int64_t in) in decNumberFromInt64()
452 decNumber *decNumberFromUInt64(decNumber *dn, uint64_t uin) in decNumberFromUInt64()
467 decNumber *decNumberFromInt128(decNumber *dn, uint64_t lo, int64_t hi) in decNumberFromInt128()
486 decNumber *decNumberFromUInt128(decNumber *dn, uint64_t lo, uint64_t hi) in decNumberFromUInt128()
514 int64_t decNumberIntegralToInt64(const decNumber *dn, decContext *set) in decNumberIntegralToInt64()
558 void decNumberIntegralToInt128(const decNumber *dn, decContext *set, in decNumberIntegralToInt128()
623 char * decNumberToString(const decNumber *dn, char *string){ in decNumberToString()
628 char * decNumberToEngString(const decNumber *dn, char *string){ in decNumberToEngString()
653 decNumber * decNumberFromString(decNumber *dn, const char chars[], in decNumberFromString()
902 decNumber * decNumberAbs(decNumber *res, const decNumber *rhs, in decNumberAbs()
904 decNumber dzero; /* for 0 */ in decNumberAbs()
934 decNumber * decNumberAdd(decNumber *res, const decNumber *lhs, in decNumberAdd()
935 const decNumber *rhs, decContext *set) { in decNumberAdd()
960 decNumber * decNumberAnd(decNumber *res, const decNumber *lhs, in decNumberAnd()
961 const decNumber *rhs, decContext *set) { in decNumberAnd()
1028 decNumber * decNumberCompare(decNumber *res, const decNumber *lhs, in decNumberCompare()
1029 const decNumber *rhs, decContext *set) { in decNumberCompare()
1048 decNumber * decNumberCompareSignal(decNumber *res, const decNumber *lhs, in decNumberCompareSignal()
1049 const decNumber *rhs, decContext *set) { in decNumberCompareSignal()
1069 decNumber * decNumberCompareTotal(decNumber *res, const decNumber *lhs, in decNumberCompareTotal()
1070 const decNumber *rhs, decContext *set) { in decNumberCompareTotal()
1090 decNumber * decNumberCompareTotalMag(decNumber *res, const decNumber *lhs, in decNumberCompareTotalMag()
1091 const decNumber *rhs, decContext *set) { in decNumberCompareTotalMag()
1094 decNumber bufa[D2N(DECBUFFER+1)];/* +1 in case DECBUFFER=0 */ in decNumberCompareTotalMag()
1095 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */ in decNumberCompareTotalMag()
1096 decNumber bufb[D2N(DECBUFFER+1)]; in decNumberCompareTotalMag()
1097 decNumber *allocbufb=NULL; /* -> allocated bufb, iff allocated */ in decNumberCompareTotalMag()
1098 decNumber *a, *b; /* temporary pointers */ in decNumberCompareTotalMag()
1108 needbytes=sizeof(decNumber)+(D2U(lhs->digits)-1)*sizeof(Unit); in decNumberCompareTotalMag()
1110 allocbufa=(decNumber *)malloc(needbytes); in decNumberCompareTotalMag()
1122 needbytes=sizeof(decNumber)+(D2U(rhs->digits)-1)*sizeof(Unit); in decNumberCompareTotalMag()
1124 allocbufb=(decNumber *)malloc(needbytes); in decNumberCompareTotalMag()
1155 decNumber * decNumberDivide(decNumber *res, const decNumber *lhs, in decNumberDivide()
1156 const decNumber *rhs, decContext *set) { in decNumberDivide()
1178 decNumber * decNumberDivideInteger(decNumber *res, const decNumber *lhs, in decNumberDivideInteger()
1179 const decNumber *rhs, decContext *set) { in decNumberDivideInteger()
1211 decNumber * decNumberExp(decNumber *res, const decNumber *rhs, in decNumberExp()
1215 decNumber *allocrhs=NULL; /* non-NULL if rounded rhs allocated */ in decNumberExp()
1267 decNumber * decNumberFMA(decNumber *res, const decNumber *lhs, in decNumberFMA()
1268 const decNumber *rhs, const decNumber *fhs, in decNumberFMA()
1273 decNumber bufa[D2N(DECBUFFER*2+1)]; in decNumberFMA()
1274 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */ in decNumberFMA()
1275 decNumber *acc; /* accumulator pointer */ in decNumberFMA()
1276 decNumber dzero; /* work */ in decNumberFMA()
1301 needbytes=sizeof(decNumber)+(D2U(dcmul.digits)-1)*sizeof(Unit); in decNumberFMA()
1303 allocbufa=(decNumber *)malloc(needbytes); in decNumberFMA()
1358 decNumber * decNumberInvert(decNumber *res, const decNumber *rhs, in decNumberInvert()
1431 decNumber * decNumberLn(decNumber *res, const decNumber *rhs, in decNumberLn()
1435 decNumber *allocrhs=NULL; /* non-NULL if rounded rhs allocated */ in decNumberLn()
1497 decNumber * decNumberLogB(decNumber *res, const decNumber *rhs, in decNumberLogB()
1553 decNumber * decNumberLog10(decNumber *res, const decNumber *rhs, in decNumberLog10()
1562 decNumber bufa[D2N(DECBUFFER+2)]; in decNumberLog10()
1563 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */ in decNumberLog10()
1564 decNumber *a=bufa; /* temporary a */ in decNumberLog10()
1565 decNumber bufb[D2N(DECBUFFER+2)]; in decNumberLog10()
1566 decNumber *allocbufb=NULL; /* -> allocated bufb, iff allocated */ in decNumberLog10()
1567 decNumber *b=bufb; /* temporary b */ in decNumberLog10()
1568 decNumber bufw[D2N(10)]; /* working 2-10 digit number */ in decNumberLog10()
1569 decNumber *w=bufw; /* .. */ in decNumberLog10()
1571 decNumber *allocrhs=NULL; /* non-NULL if rounded rhs allocated */ in decNumberLog10()
1630 needbytes=sizeof(decNumber)+(D2U(p)-1)*sizeof(Unit); in decNumberLog10()
1632 allocbufa=(decNumber *)malloc(needbytes); in decNumberLog10()
1653 needbytes=sizeof(decNumber)+(D2U(p)-1)*sizeof(Unit); in decNumberLog10()
1655 allocbufb=(decNumber *)malloc(needbytes); in decNumberLog10()
1701 decNumber * decNumberMax(decNumber *res, const decNumber *lhs, in decNumberMax()
1702 const decNumber *rhs, decContext *set) { in decNumberMax()
1724 decNumber * decNumberMaxMag(decNumber *res, const decNumber *lhs, in decNumberMaxMag()
1725 const decNumber *rhs, decContext *set) { in decNumberMaxMag()
1747 decNumber * decNumberMin(decNumber *res, const decNumber *lhs, in decNumberMin()
1748 const decNumber *rhs, decContext *set) { in decNumberMin()
1770 decNumber * decNumberMinMag(decNumber *res, const decNumber *lhs, in decNumberMinMag()
1771 const decNumber *rhs, decContext *set) { in decNumberMinMag()
1795 decNumber * decNumberMinus(decNumber *res, const decNumber *rhs, in decNumberMinus()
1797 decNumber dzero; in decNumberMinus()
1825 decNumber * decNumberNextMinus(decNumber *res, const decNumber *rhs, in decNumberNextMinus()
1827 decNumber dtiny; /* constant */ in decNumberNextMinus()
1861 decNumber * decNumberNextPlus(decNumber *res, const decNumber *rhs, in decNumberNextPlus()
1863 decNumber dtiny; /* constant */ in decNumberNextPlus()
1900 decNumber * decNumberNextToward(decNumber *res, const decNumber *lhs, in decNumberNextToward()
1901 const decNumber *rhs, decContext *set) { in decNumberNextToward()
1902 decNumber dtiny; /* constant */ in decNumberNextToward()
1968 decNumber * decNumberOr(decNumber *res, const decNumber *lhs, in decNumberOr()
1969 const decNumber *rhs, decContext *set) { in decNumberOr()
2038 decNumber * decNumberPlus(decNumber *res, const decNumber *rhs, in decNumberPlus()
2040 decNumber dzero; in decNumberPlus()
2068 decNumber * decNumberMultiply(decNumber *res, const decNumber *lhs, in decNumberMultiply()
2069 const decNumber *rhs, decContext *set) { in decNumberMultiply()
2105 decNumber * decNumberPower(decNumber *res, const decNumber *lhs, in decNumberPower()
2106 const decNumber *rhs, decContext *set) { in decNumberPower()
2108 decNumber *alloclhs=NULL; /* non-NULL if rounded lhs allocated */ in decNumberPower()
2109 decNumber *allocrhs=NULL; /* .., rhs */ in decNumberPower()
2111 decNumber *allocdac=NULL; /* -> allocated acc buffer, iff used */ in decNumberPower()
2112 decNumber *allocinv=NULL; /* -> allocated 1/x buffer, iff used */ in decNumberPower()
2128 decNumber dnOne; /* work value 1... */ in decNumberPower()
2130 decNumber dacbuff[D2N(DECBUFFER+9)]; in decNumberPower()
2131 decNumber *dac=dacbuff; /* -> result accumulator */ in decNumberPower()
2133 decNumber invbuff[D2N(DECBUFFER+9)]; in decNumberPower()
2296 needbytes=sizeof(decNumber)+(D2U(aset.digits)-1)*sizeof(Unit); in decNumberPower()
2299 allocdac=(decNumber *)malloc(needbytes); in decNumberPower()
2337 decNumber *inv=invbuff; /* assume use fixed buffer */ in decNumberPower()
2346 allocinv=(decNumber *)malloc(needbytes); in decNumberPower()
2450 decNumber * decNumberQuantize(decNumber *res, const decNumber *lhs, in decNumberQuantize()
2451 const decNumber *rhs, decContext *set) { in decNumberQuantize()
2470 decNumber * decNumberNormalize(decNumber *res, const decNumber *rhs, in decNumberNormalize()
2475 decNumber * decNumberReduce(decNumber *res, const decNumber *rhs, in decNumberReduce()
2478 decNumber *allocrhs=NULL; /* non-NULL if rounded rhs allocated */ in decNumberReduce()
2538 decNumber * decNumberRescale(decNumber *res, const decNumber *lhs, in decNumberRescale()
2539 const decNumber *rhs, decContext *set) { in decNumberRescale()
2558 decNumber * decNumberRemainder(decNumber *res, const decNumber *lhs, in decNumberRemainder()
2559 const decNumber *rhs, decContext *set) { in decNumberRemainder()
2581 decNumber * decNumberRemainderNear(decNumber *res, const decNumber *lhs, in decNumberRemainderNear()
2582 const decNumber *rhs, decContext *set) { in decNumberRemainderNear()
2617 decNumber * decNumberRotate(decNumber *res, const decNumber *lhs, in decNumberRotate()
2618 const decNumber *rhs, decContext *set) { in decNumberRotate()
2738 decNumber * decNumberSameQuantum(decNumber *res, const decNumber *lhs, in decNumberSameQuantum()
2739 const decNumber *rhs) { in decNumberSameQuantum()
2773 decNumber * decNumberScaleB(decNumber *res, const decNumber *lhs, in decNumberScaleB()
2774 const decNumber *rhs, decContext *set) { in decNumberScaleB()
2830 decNumber * decNumberShift(decNumber *res, const decNumber *lhs, in decNumberShift()
2831 const decNumber *rhs, decContext *set) { in decNumberShift()
2959 decNumber * decNumberSquareRoot(decNumber *res, const decNumber *rhs, in decNumberSquareRoot()
2962 decNumber dzero; /* used for constant zero */ in decNumberSquareRoot()
2974 decNumber *allocrhs=NULL; /* non-NULL if rounded rhs allocated */ in decNumberSquareRoot()
2977 decNumber buff[D2N(DECBUFFER+1)]; in decNumberSquareRoot()
2979 decNumber bufa[D2N(DECBUFFER+2)]; in decNumberSquareRoot()
2981 decNumber bufb[D2N(DECBUFFER+2)]; in decNumberSquareRoot()
2982 decNumber *allocbuff=NULL; /* -> allocated buff, iff allocated */ in decNumberSquareRoot()
2983 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */ in decNumberSquareRoot()
2984 decNumber *allocbufb=NULL; /* -> allocated bufb, iff allocated */ in decNumberSquareRoot()
2985 decNumber *f=buff; /* reduced fraction */ in decNumberSquareRoot()
2986 decNumber *a=bufa; /* approximation to result */ in decNumberSquareRoot()
2987 decNumber *b=bufb; /* intermediate result */ in decNumberSquareRoot()
2989 decNumber buft[D2N(3)]; in decNumberSquareRoot()
2990 decNumber *t=buft; /* up-to-3-digit constant or work */ in decNumberSquareRoot()
3051 needbytes=sizeof(decNumber)+(D2U(rhs->digits)-1)*sizeof(Unit); in decNumberSquareRoot()
3053 allocbuff=(decNumber *)malloc(needbytes); in decNumberSquareRoot()
3060 needbytes=sizeof(decNumber)+(D2U(maxp)-1)*sizeof(Unit); in decNumberSquareRoot()
3062 allocbufa=(decNumber *)malloc(needbytes); in decNumberSquareRoot()
3063 allocbufb=(decNumber *)malloc(needbytes); in decNumberSquareRoot()
3293 decNumber * decNumberSubtract(decNumber *res, const decNumber *lhs, in decNumberSubtract()
3294 const decNumber *rhs, decContext *set) { in decNumberSubtract()
3326 decNumber * decNumberToIntegralExact(decNumber *res, const decNumber *rhs, in decNumberToIntegralExact()
3328 decNumber dn; in decNumberToIntegralExact()
3356 decNumber * decNumberToIntegralValue(decNumber *res, const decNumber *rhs, in decNumberToIntegralValue()
3382 decNumber * decNumberXor(decNumber *res, const decNumber *lhs, in decNumberXor()
3383 const decNumber *rhs, decContext *set) { in decNumberXor()
3447 enum decClass decNumberClass(const decNumber *dn, decContext *set) { in decNumberClass()
3500 decNumber * decNumberCopy(decNumber *dest, const decNumber *src) { in decNumberCopy()
3540 decNumber * decNumberCopyAbs(decNumber *res, const decNumber *rhs) { in decNumberCopyAbs()
3561 decNumber * decNumberCopyNegate(decNumber *res, const decNumber *rhs) { in decNumberCopyNegate()
3582 decNumber * decNumberCopySign(decNumber *res, const decNumber *lhs, in decNumberCopySign()
3583 const decNumber *rhs) { in decNumberCopySign()
3605 uByte * decNumberGetBCD(const decNumber *dn, uint8_t *bcd) { in decNumberGetBCD()
3639 decNumber * decNumberSetBCD(decNumber *dn, const uByte *bcd, uInt n) { in decNumberSetBCD()
3664 Int decNumberIsNormal(const decNumber *dn, decContext *set) { in decNumberIsNormal()
3684 Int decNumberIsSubnormal(const decNumber *dn, decContext *set) { in decNumberIsSubnormal()
3707 decNumber * decNumberTrim(decNumber *dn) { in decNumberTrim()
3735 decNumber * decNumberZero(decNumber *dn) { in decNumberZero()
3768 static void decToString(const decNumber *dn, char *string, Flag eng) { in decToString()
3950 static decNumber * decAddOp(decNumber *res, const decNumber *lhs, in decAddOp()
3951 const decNumber *rhs, decContext *set, in decAddOp()
3954 decNumber *alloclhs=NULL; /* non-NULL if rounded lhs allocated */ in decAddOp()
3955 decNumber *allocrhs=NULL; /* .., rhs */ in decAddOp()
4138 const decNumber *t; in decAddOp()
4364 static decNumber * decDivideOp(decNumber *res, in decDivideOp()
4365 const decNumber *lhs, const decNumber *rhs, in decDivideOp()
4368 decNumber *alloclhs=NULL; /* non-NULL if rounded lhs allocated */ in decDivideOp()
4369 decNumber *allocrhs=NULL; /* .., rhs */ in decDivideOp()
4984 static decNumber * decMultiplyOp(decNumber *res, const decNumber *lhs, in decMultiplyOp()
4985 const decNumber *rhs, decContext *set, in decMultiplyOp()
5041 decNumber *alloclhs=NULL; /* -> allocated buffer, iff allocated */ in decMultiplyOp()
5042 decNumber *allocrhs=NULL; /* -> allocated buffer, iff allocated */ in decMultiplyOp()
5071 const decNumber *hold=lhs; in decMultiplyOp()
5374 static decNumber *decExpOp(decNumber *res, const decNumber *rhs, in decExpOp()
5381 const decNumber *x=rhs; /* (may point to safe copy later) */ in decExpOp()
5388 decNumber bufr[D2N(DECBUFFER*2+1)]; in decExpOp()
5389 decNumber *allocrhs=NULL; /* non-NULL if rhs buffer allocated */ in decExpOp()
5396 decNumber buft[D2N(DECBUFFER*2+9+1)]; in decExpOp()
5397 decNumber *allocbuft=NULL; /* -> allocated buft, iff allocated */ in decExpOp()
5398 decNumber *t=buft; /* term */ in decExpOp()
5400 decNumber bufa[D2N(DECBUFFER*4+18+1)]; in decExpOp()
5401 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */ in decExpOp()
5402 decNumber *a=bufa; /* accumulator */ in decExpOp()
5405 decNumber bufd[D2N(16)]; in decExpOp()
5406 decNumber *d=bufd; /* divisor */ in decExpOp()
5407 decNumber numone; /* constant 1 */ in decExpOp()
5507 decNumber *newrhs=bufr; /* assume will fit on stack */ in decExpOp()
5508 needbytes=sizeof(decNumber)+(D2U(rhs->digits)-1)*sizeof(Unit); in decExpOp()
5510 allocrhs=(decNumber *)malloc(needbytes); in decExpOp()
5540 needbytes=sizeof(decNumber)+(D2U(p*2)-1)*sizeof(Unit); in decExpOp()
5542 allocbufa=(decNumber *)malloc(needbytes); in decExpOp()
5552 needbytes=sizeof(decNumber)+(D2U(p+2)-1)*sizeof(Unit); in decExpOp()
5554 allocbuft=(decNumber *)malloc(needbytes); in decExpOp()
5735 static decNumber *decLnOp(decNumber *res, const decNumber *rhs,
5747 decNumber bufa[D2N(DECBUFFER+12)];
5748 decNumber *allocbufa=NULL; /* -> allocated bufa, iff allocated */
5749 decNumber *a=bufa; /* accumulator/work */
5750 decNumber bufb[D2N(DECBUFFER*2+2)];
5751 decNumber *allocbufb=NULL; /* -> allocated bufa, iff allocated */
5752 decNumber *b=bufb; /* adjustment/work */
5754 decNumber numone; /* constant 1 */
5755 decNumber cmp; /* work */
5818 needbytes=sizeof(decNumber)+(D2U(MAXI(p,16))-1)*sizeof(Unit);
5820 allocbufa=(decNumber *)malloc(needbytes);
5827 needbytes=sizeof(decNumber)+(D2U(MAXI(pp,16))-1)*sizeof(Unit);
5829 allocbufb=(decNumber *)malloc(needbytes);
5979 static decNumber * decQuantizeOp(decNumber *res, const decNumber *lhs,
5980 const decNumber *rhs, decContext *set,
5983 decNumber *alloclhs=NULL; /* non-NULL if rounded lhs allocated */
5984 decNumber *allocrhs=NULL; /* .., rhs */
5986 const decNumber *inrhs=rhs; /* save original rhs */
6152 static decNumber *decCompareOp(decNumber *res, const decNumber *lhs,
6153 const decNumber *rhs, decContext *set,
6156 decNumber *alloclhs=NULL; /* non-NULL if rounded lhs allocated */
6157 decNumber *allocrhs=NULL; /* .., rhs */
6263 const decNumber *choice;
6317 static Int decCompare(const decNumber *lhs, const decNumber *rhs,
6352 const decNumber *temp=lhs;
6738 static decNumber * decTrim(decNumber *dn, decContext *set, Flag all,
6954 static decNumber *decRoundOperand(const decNumber *dn, decContext *set,
6956 decNumber *res; /* result structure */
6962 res=(decNumber *)malloc(sizeof(decNumber)
6990 static void decCopyFit(decNumber *dest, const decNumber *src,
7036 static void decSetCoeff(decNumber *dn, decContext *set, const Unit *lsu,
7217 static void decApplyRound(decNumber *dn, decContext *set, Int residue,
7386 static void decFinish(decNumber *dn, decContext *set, Int *residue,
7421 static void decFinalize(decNumber *dn, decContext *set, Int *residue,
7434 decNumber nmin;
7495 static void decSetOverflow(decNumber *dn, decContext *set, uInt *status) {
7541 static void decSetMaxValue(decNumber *dn, decContext *set) {
7575 static void decSetSubnormal(decNumber *dn, decContext *set, Int *residue,
7661 static uInt decCheckMath(const decNumber *rhs, decContext *set,
7689 static Int decGetInt(const decNumber *dn) {
7778 static decNumber *decDecap(decNumber *dn, Int drop) {
7837 static decNumber * decNaNs(decNumber *res, const decNumber *lhs,
7838 const decNumber *rhs, decContext *set,
7888 static void decStatus(decNumber *dn, uInt status, decContext *set) {
7992 void decNumberShow(const decNumber *dn) {
8089 static Flag decCheckOperands(decNumber *res, const decNumber *lhs,
8090 const decNumber *rhs, decContext *set) {
8135 static Flag decCheckNumber(const decNumber *dn) {
8236 static void decCheckInexact(const decNumber *dn, decContext *set) {