In the dim, cold dark of deep night, Egwene woke groggily from restless sleep and troubling dreams, the more troubling because she could not remember them. Her dreams were always open to her, as clear as printed words on a page, yet these had been murky and fearful. She had had too many of those, lately. They left her wanting to run, to escape, never able to recall what from, but always queasy and uncertain, even trembling. At least her head was not hurting. At least she could recall the dreams she knew must be significant, though not how to interpret them. Rand, wearing different masks, until suddenly one of those false faces was no longer a mask, but him. Perrin and a Tinker, frenziedly hacking their way through brambles with axe and sword, unaware of the cliff that lay just ahead. And the brambles screamed with human voices they did not hear. Mat, weighing two Aes Sedai on a huge set of balance scales, and on his decision depended . . . She could not say what; something vast; the world, perhaps. There had been other dreams, most tinged with suffering. Recently, all of her dreams about Mat were pale and full of pain, like shadows cast by nightmares, almost as though Mat himself were not quite real. That made her afraid for him, left behind in Ebou Dar, and gave her agonies of grief for sending him there, not to mention poor old Thom Merrilin. But the unremembered dreams were worse, she was sure.
The sound of low voices arguing had wakened her, and the full moon was still up outside, casting enough light for her to make out two women confronting one another at the tent’s entrance.
 “Let this wait till morning.”
“I don’t propose to argue with you.” Siuan’s voice was winter itself, and she tossed back her cloak with a mittened hand as though preparing to fight. She was dressed for the weather, in stout wool no doubt worn over as many shifts as she could fit underneath. “You stand aside, and right quick, or I’ll have your guts for bait! And put on some decent clothes!”
With a soft laugh, Halima drew up and if anything planted herself more squarely in Siuan’s way. Her white nightgown clung, but was decent enough for its purpose. Though it did seem a wonder she evaded freezing in that thin silk. The coals in the tripod braziers had died down long since, and neither much-mended tent canvas nor layered carpets on the ground held in warmth any longer. Both women’s breath was pale mist.
 Halima was a country woman with a skim of sophistication, and often she did not seem to realize the deference due to Aes Sedai, or indeed seem to think she need defer to anyone. She spoke to Sitters as she might to the goodwives in her own village, with a laugh and a level eye and a straightforward earthiness that sometimes shocked. Siuan spent her days giving way to women who had jumped at her word a year earlier, smiling and curtsying for nearly every sister in the camp. Many still laid much of the Tower’s troubles at her feet and thought she had hardly suffered enough to atone. Sufficient to keep anyone’s pride at a stiff prickle. Together, the pair were a lantern tossed into the back of an Illuminator’s wagon, but Egwene hoped to avoid an explosion. Besides, Siuan would not have come in the middle of the night unless it was necessary.
“Go back to bed, Halima,” Smothering a yawn, Egwene bent to fumble her shoes and stockings from beneath the cot. She did not channel a lamp alight. Better if no one noticed that the Amyrlin was awake. “Go on; you need your rest.”
Halima protested, perhaps more strongly than she should have to the Amyrlin Seat, but soon enough she was back on the tiny cot that had been squeezed into the tent for her. Very little room remained to move in, with a washstand, a stand-mirror and a real armchair, plus four large chests stacked atop one another. Those held the constant flow of clothes from Sitters who had not yet realized that however young Egwene might be, she was not young enough to be dazzled or diverted by silks and laces. Halima lay curled up, watching in the darkness, while Egwene hastily dragged an ivory comb through her hair, donned stout mittens, and pulled a fox-lined cloak over her nightgown. A thick woolen nightgown, and she would not have minded thicker in this weather. Halima’s eyes seemed to pick up the faint moonlight and shine darkly, unblinking.
Egwene did not think the woman jealous of her place near the Amyrlin Seat, casual as it was, and the Light knew she did not carry gossip, but Halima had an innocent curiosity about everything, whether or not it was any of her business. Reason enough to hear Siuan out elsewhere. Everyone knew now that Siuan had thrown in her lot with Egwene, after a fashion, as they thought, sullenly and grudgingly. A figure of some amusement and occasional pity, Siuan Sanche, reduced to attaching herself to the woman who held the title once hers, and that woman no more than a puppet once the Hall finished fighting over who would pull her cords. Siuan was human enough to harbor sparks of resentment, but so far they had managed to keep secret that her advice was far from grudging. So she endured pity and snickers as best she could, and everyone believed her as changed by her experiences as her face. That belief had to be maintained, or Romanda and Lelaine and very likely the rest of the Hall, too, would find ways to separate her—and her advice—from Egwene.
The cold outside slapped Egwene in the face and flooded under her cloak; her nightgown might as well have been Halima’s for all the protection it offered. Despite stout leather and good wool, her feet felt as if they were bare. Tendrils of frosty air curled around her ears, mocking the thick fur lining her hood. Yearning for her bed as she was, ignoring the iciness took all the concentration she could muster. Clouds scudded across the sky, and moon-shadows floated over the gleaming white that covered the ground, a smooth sheet broken by the dark mounds of tents and the taller shapes of canvas-topped wagons that now had long wooden runners in place of wheels. Many of the wagons were no longer parked apart from the tents, but left where they had been unloaded; no one had the heart to make the wagon drivers put out even that much extra effort at the end of the day. Nothing moved except those pale sliding shadows. The wide runnels that had been trampled through the camp for paths lay empty. The silence was crisp and so deep that she almost regretted breaking it.
“What is it?” she asked softly, casting a wary glance at the small tent nearby shared by her maids, Chesa, Meri, and Selame. That was as still and dark as the others. Exhaustion made as thick a blanket over the camp as the snow. “Not another revelation like the Kin, I hope.” She clicked her tongue in vexation. She was spent, too, by long freezing days in the saddle and not enough real sleep, or she would not have said that. “I’m sorry, Siuan.”
“No need to apologize, Mother.” Siuan kept her voice down as well, and glanced about to see whether anyone might be watching from the shadows besides. Neither wanted to find herself discussing the Kin with the Hall. “I know I should have told you beforehand, but it seemed a small thing. I never expected those girls to even speak to one of them. There’s so much to tell you. I have to try to pick and choose what’s important.”
With an effort, Egwene managed not to sigh. That was almost word for word the apology Siuan had offered before. Several times. What she meant was that she was trying to force-feed Egwene over twenty years of experience as Aes Sedai, more than ten of that as Amyrlin, and do it in months. At times Egwene felt like a goose being fattened for market. “Well, what’s important tonight?”
“Gareth Bryne’s waiting in your study.” Siuan did not raise her voice, but it took on an edge, as always when she spoke of Lord Bryne. She tossed her head angrily inside the deep hood of her cloak, and made a sound like a cat spitting. “The man came in dripping snow, scooped me out of my bedding, and barely gave me time to dress before hauling me up behind his saddle. He told me nothing; just tossed me down at the edge of camp and sent me to fetch you like I was a serving girl!”
Firmly, Egwene stifled a rising hope. There had been too many disappointments, and whatever had brought Bryne in the middle of the night was much more likely to be a potential disaster than what she wished for. How far yet to the border with Andor? “Let’s see what he wants.”
Starting off toward the tent everyone named the Amyrlin’s Study, she held her cloak close. She did not shiver, but refusing to let heat or cold touch you did not make them go away.  She considered what Siuan had said.
“You weren’t sleeping in your own tent here?” she said carefully. The other woman’s relation to Lord Bryne was that of a servant, in a very peculiar way, but Egwene hoped Siuan was not letting her stubborn pride lead her into letting him take advantage. She could not imagine it, of him or her, yet not so long ago she could not have imagined Siuan accepting any part of the situation. She still could not understand why.
Snorting loudly, Siuan kicked her skirts, and nearly fell as her shoes skidded. Snow beaten down by countless feet had quickly become a rough sheet of ice. Egwene was picking her own way cautiously. Every day brought broken bones that travel-weary sisters had to Heal. Half abandoning her cloak, she offered an arm as much for the support she might receive as give. Siuan took it, muttering.
“By the time I finished cleaning the man’s spare boots and second saddle, it was too late to tramp back through this. Not that he offered more than blankets in a corner; not Gareth Bryne!  Men are a trial, and that one the worst!” Without a pause for breath, she changed the subject. “You shouldn’t let that Halima sleep in your tent. She’s another pair of ears you have to be careful of, and snoopy with it. Besides, you’re lucky you don’t walk in to find her entertaining some soldier.”
“I am very glad that Delana can spare Halima nights,” Egwene said firmly. “I need her. Unless you think Nisao’s Healing might do better with my headaches a second time around.” Halima’s fingers seemed to draw the pain out through her scalp; without that, she would not be able to sleep at all. Nisao’s effort had had no effect whatsoever, and she was the only Yellow Egwene dared approach with the problem. As for the rest . . . She made her voice sterner still. “I am surprised you’re still listening to that gossip, daughter. The fact that men like looking at a woman doesn’t mean she invites it, as you should know well. I’ve seen more than a few looking at you and grinning.” Taking that tone came easier than it once had.
Siuan gave her a startled sidelong glance and, after a moment, grumbled an apology. It might have been sincere. Egwene accepted it, either way. Lord Bryne was very bad for Siuan’s temper, and tossing Halima into the bargain, Egwene thought it a good job she was not pushed into taking a stricter stance. Siuan herself had said that she should not put up with nonsense, and she surely could not afford to put up with it from Siuan, of all people.
Trudging arm-in-arm, they went on in silence, the cold fogging their breath and seeping through their flesh. The snow was a curse and a lesson. She could still hear Siuan going on about what she called the Law of Unintended Consequences, stronger than any written law. Whether or not what you do has the effect you want, it will have three at least you never expected, and one of those usually unpleasant.
The first, feeble rains had brought astonishment, for all Egwene had already informed the Hall that the Bowl of the Winds had been found and used. That was almost as much as she could risk letting them know of what Elayne had told her in Tel’aran’rhiod; too much of what had happened in Ebou Dar was just the thing to cut her feet out from under her here, and her position was precarious enough as it was. An explosion of joy erupted at those first sprinkles. They had halted the march at midday, and there had been bonfires and feasting in the drizzle, prayers of thanksgiving among the sisters and dancing among the servants and the soldiers. For that matter, some of the Aes Sedai had danced, too.
A few days later, the soft rains became downpours, and then howling tempests. The temperature slid downward, plummeted, and tempests became blizzards. Now, the distance once covered in a day, with Egwene gritting her teeth over how slowly they moved, took five when the sky held only clouds, and when the snows fell, they did not move at all. Easy enough to think of three unintended consequences, or more, and the snow might well be the least unpleasant.
As they approached the small, patched tent called the Amyrlin’s Study, a shadow moved beside one of the tall wagons, and Egwene’s breath caught. The shadow became a figure who slipped back her hood enough to reveal Leane’s face, then pulled back into darkness.
“She’ll keep a watch and let us know if anybody comes,” Siuan said softly.
“That’s good,” Egwene muttered. The woman could have told her in advance. She had half been afraid it was Romanda or Lelaine!
The Amyrlin’s Study was dark, but Lord Bryne stood waiting patiently inside, wrapped in his cloak, a shadow among shadows. Embracing the Source, Egwene channeled, not to light the lantern hanging from the centerpole or one of the candles, but to make a small sphere of pale light that she suspended in the air over the folding table she used as a writing desk. Very small, and very pale; unlikely to be noticed from outside, and quick as thought to extinguish. She could not afford discovery.
There had been Amyrlins who reigned in strength, Amyrlins who managed an even balance with the Hall, and Amyrlins who had had as little power as she, or less upon rare occasions, well-hidden in the secret histories of the White Tower. Several had frittered away power and influence, falling from strength to weakness, but in over three thousand years, precious few had managed to move in the other direction. Egwene very much wished she knew how Myriam Copan and the rest of that bare handful had managed. If anyone had ever thought to write that down, the pages were long lost.
Bowing respectfully, Bryne showed no surprise at her caution. He knew what she put at hazard, meeting him secretly. To a very large degree, she trusted this sturdy, heavily graying man with the bluff, weathered face, and not only because she had to. His cloak was thick red wool, lined with marten and bordered with the Flame of Tar Valon, a gift from the Hall, yet he had made plain a dozen times in the past weeks that whatever the Hall thought—and he was not blind enough to have missed that!—she was the Amyrlin, and he followed the Amyrlin. Oh, he had never said so right out, but with carefully worded hints that left no doubts. Expecting more would have been expecting too much. There were nearly as many undercurrents in the camp as there were Aes Sedai, some strong enough to pull him down. Several strong enough to mire her deeper than she was, if the Hall learned of this meeting. She trusted him further than anyone except Siuan and Leane, or Elayne and Nynaeve, maybe further than any of the sisters who had sworn fealty to her in secret, and she wished she had the courage to trust him more. The ball of white light cast weak, fitful shadows.
“You have news, Lord Bryne?” she asked, stifling hope. She could think of a dozen possible messages that might bring him in the night, each with its own set of pitfalls and snares. Had Rand decided to add more crowns to that of Illian, or the Seanchan somehow captured still another city, or the Band of the Red Hand suddenly moved on its own instead of shadowing the Aes Sedai, or . . .
“An army lies north of us, Mother,” he replied calmly. His leather-gauntleted hands rested lightly atop his long sword hilt. An army to the north, a little more snow, all the same. “Andorans, mainly, but with a goodly number of Murandians. My deep scouts brought the news less than an hour ago. Pelivar leads, and Arathelle is with him, the High Seats of two of the strongest Houses in Andor, and they’ve brought twenty more at least. They’re pushing south hard, it seems. If you keep on as you are, which I advise against, we should meet head-on in two days, three at the outside.”
Egwene kept her face smooth, suppressing her relief. What she had been hoping for, waiting for; what she had begun to fear might never come. Surprisingly, it was Siuan who gasped, and clapped a mittened hand over her mouth too late. Bryne cocked at eyebrow at her, but she recovered quickly, putting on Aes Sedai serenity so thick you almost forgot her youthful face.
“Do you have qualms at fighting your fellow Andorans?” she demanded. “Speak up, man. I’m not your washwoman here.” Well, there was a small crack in that serenity.
“As you command, Siuan Sedai.” Bryne’s tone held no scrap of mockery, yet Siuan’s mouth began to tighten, her outward coolness evaporating fast. He made her a small bow, workmanlike but acceptable. “I will fight whoever the Mother wishes me to fight, of course.” Even here, he would not be more forthcoming. Men learned caution around Aes Sedai. So did women. Egwene thought caution had become a second skin for her.
“And if we don’t keep on?” she said. So much planning, just her and Siuan and sometimes Leane, and now she still had to feel out each step as carefully as on those icy paths outside. “If we stop here?”
He did not hesitate. “If you have a way to bring them around without fighting, all well and good, but some time tomorrow they’ll reach an excellent position to defend, one flank held by the River Armahn, the other by a large peat bog, and small streams in front to break up attacks. Pelivar will settle in there to wait; he knows the work. Arathelle will have her part if there’s talking, but she’ll leave the pikes and swords to him. We can’t reach it ahead of him, and anyway, the terrain is no use to us there, with him to the north. If you mean to fight, I advise making for that ridge we crossed two days back. We can reach it in good order ahead of them if we start at dawn, and Pelivar would think twice about coming at us there if he had three times the numbers he does.”
Wriggling near-frozen toes inside her stockings, Egwene let out an annoyed sigh. There was a difference between not letting cold touch you and not feeling it. Picking her way carefully, not letting herself be distracted by the chill, she asked, “Will they talk, offered the chance?”
“Probably, Mother. The Murandians hardly count; they’re just there for whatever advantage they can wring out of the situation, same as their countrymen under me. It’s Pelivar and Arathelle who matter.  He shook his head grimly. “But they’ll fight if they have to, if they must, maybe even if it means facing Aes Sedai instead of just soldiers. I expect they’ve heard the same tales we have about that battle out east somewhere.”
“Fish guts!” Siuan growled. So much for calm. “Half-baked rumors and raw gossip are no proof there was any battle, you lummox, and if there was, sisters wouldn’t have gotten themselves mixed up in it!” The man truly was an occasion of sin for her.
Strangely, Bryne smiled. He often did when Siuan showed her temper. Anywhere else, on anyone else, Egwene would have called the smile fond. “Better for us if they believe,” he told Siuan mildly. Her face darkened so, you might have thought he had sneered at her.
Why did a normally sensible woman let Bryne get under her skin? Whatever the reason, Egwene had no time for it tonight. “Siuan, I see someone forgot to take away the mulled wine. It can’t have soured in this weather. Warm it for us, please.” She did not like setting the other woman down in front of Bryne, but she had to be reined in, and this seemed the gentlest way to do it. Really, they should not have left the silver pitcher on her table.
Siuan did not quite flinch, but from her stricken expression, quickly smoothed over, you would never have believed she washed the man’s smallclothes. Without comment she channeled slightly to reheat the wine in the silver pitcher, quickly filled two clean worked-silver cups, and handed the first to Egwene. She kept the second, staring at Lord Bryne as she sipped and leaving him to pour for himself.
Warming her mittened fingers on her own cup, Egwene felt a flash of irritation. Maybe it was part of Siuan’s long-delayed reaction to the death of her Warder. She still became weepy for no visible reason now and then, though she tried to hide it. Egwene put the matter out of her head. Tonight, that was an anthill beside mountains.
“I want to avoid a battle if I can, Lord Bryne. The army is for Tar Valon, not fighting a war here. Send to arrange a meeting as soon as possible for the Amyrlin Seat with Lord Pelivar and Lady Arathelle and anyone else you think you should be present. Not here. Our ragged camp won’t impress them very much. As soon as possible, mind. I wouldn’t object to tomorrow, if it could be set.”
“That’s sooner than I can manage, Mother,” he said mildly. “If I send riders out as soon as I return to camp, I doubt they can be back with an answer much before tomorrow night.”
“Then I suggest you return quickly.” Light, but her hands and feet felt cold. And the pit of her stomach, too. But her voice kept its calm. “And I want you to keep that meeting, and the existence of their army, from the Hall as long as possible.”
This time, she was asking him to take as great a risk as she did. Gareth Bryne was one of the best generals living, but the Hall chafed that he did not run the army to suit them. They had been grateful for his name in the beginning, for it helped draw soldiers to their cause. Now the army had more than thirty thousand armed men, with more coming even since the snows had started, and they thought that maybe they did not need Lord Gareth Bryne any longer. And of course, there were those who believed they never had needed him. They would not simply send him away for this. If the Hall chose to act, he might well go to the headsman for treason.
He did not blink, and he did not ask questions. Perhaps he knew she would not give answers. Or maybe he thought he knew them. “There isn’t much traffic between my camp and yours, but too many men know already to keep a secret long. I will do what I can, though.”
As simple as that. The first step down a road that would see her on the Amyrlin Seat in Tar Valon, or else deliver her firmly into the grasp of the Hall, with nothing left to decide except whether it was Romanda or Lelaine who told her what to do. Somehow, such a pivotal moment should have been accompanied by fanfares of trumpets, or at the least, thunder in the sky. It was always that way in stories.
Egwene let the ball of light vanish, but as Bryne turned to leave, she caught his arm. It was like catching a thick tree branch through his coat. “A thing I have been meaning to ask you, Lord Bryne. You can’t want to take men worn down by marching right into a siege of Tar Valon. How long would you want to rest them before you began?”
For the first time, he paused, and she wished she still had the light to see his face. She thought he frowned. “Even leaving people in the pay of the Tower out of it,” he said at last, slowly, “news of an army flies as fast as a falcon. Elaida will know to the day when we’ll arrive, and she won’t give us an hour. You know she’s increasing the Tower Guard? To fifty thousand men, apparently. But a month, if I could, to rest and recover. Ten days would do, but a month would be better.”
She nodded, releasing him. That casual question about the Tower Guard hurt. He was aware that the Hall and the Ajahs told her what they wanted her to know and no more. “I suppose you’re right,” she said evenly. “There’ll be no time for rest once we reach Tar Valon. Send your fastest riders. There won’t be any difficulty, will there? Pelivar and Arathelle will hear them out?” She did not feign the touch of anxiety. More than her plans might be ruined if they had to fight now.
Bryne’s tone did not alter a whit that she could tell, but somehow, he sounded soothing. “So long as there is light enough for them to see the white feathers, they’ll recognize a truce and listen. I’d better go, Mother. It’s a long way and hard riding, even for men with extra horses.”
As soon as the tentflap fell behind him, Egwene let out a long breath. Her shoulders were tight, and she expected her head to start aching any moment. Bryne usually made her feel relaxed, absorbing his sureness. Tonight, she had had to manipulate him, and she thought he knew it. He was very observant for a man. But too much was at stake to trust him more, until he made an open declaration. Maybe an oath like the one Myrelle and the others had given. Bryne followed the Amyrlin, and the army followed Bryne. If he thought she was going to throw men away uselessly, a few words from him could hand her to the Hall trussed like a pig on a platter. She drank deeply, feeling the warmth of the spiced wine spread through her.
“Better for us if they believed,” she muttered. “I wish there was something for them to believe. If I do nothing else, Siuan, I hope at least I can free us from the Three Oaths.”
“No!” Siuan barked. She sounded scandalized. “Even trying could be disastrous, and if you succeeded . . . The Light help us, if you succeeded, you would destroy the White Tower.”
“What are you talking about? I try to follow the Oaths, Siuan, since we’re stuck with them—for now—but the Oaths won’t help us against the Seanchan. If sisters have to be in danger of their lives before they can fight back, it’s only a matter of time before we are all dead or collared.” For a moment she could feel the a’dam around her throat again, turning her into a dog on a leash. A well-trained and obedient dog. She was glad of the darkness, now, hiding her trembles. Shadows obscured Siuan’s face, save for a soundlessly working jaw.
“Don’t you look at me like that, Siuan.” It was easier to be angry than afraid, easy to mask fear in anger. She would never be collared like that again! “You’ve taken every advantage since you were freed from the Oaths. If you hadn’t lied in your teeth, we’d all be in Salidar, without an army, sitting on our hands and waiting for a miracle. Well, you would be. They’d never have summoned me to be Amyrlin without your lie about Logain and the Reds. Elaida would reign supreme, and in a year, nobody would remember how she usurped the Amyrlin Seat. She’d destroy the Tower, for sure. You know she’d mishandle everything about Rand. I would not be surprised if she had tried to kidnap him by now, except that she’s concerned with us. Well, maybe not kidnap, but she’d have done something. Likely, Aes Sedai would be fighting Asha’man today, and never mind Tarmon Gai’don waiting over the horizon.”
“I have lied when it seemed necessary,” Siuan breathed. “When it seemed expedient.” Her shoulders hunched, and she sounded as though she were confessing crimes she did not want to admit to herself. “Sometimes I think it’s become too easy for me to decide that it’s necessary and expedient. I’ve lied to almost everyone. Except you. But don’t think it hasn’t occurred to me. To nudge you toward a decision, or away from one. It wasn’t wanting to keep your trust that stopped me.” Siuan’s hand stretched out in the dark, pleading. “The Light knows what your trust and friendship mean to me, but it wasn’t that. It wasn’t knowing that you’d have the hide off me in strips, or send me away, if you found out. I realized that I had to hold on to the Oaths with somebody, or I’d lose myself completely.  And as soon I can, Mother, I will swear the Three Oaths on the Oath Rod again.”
“Why?” Egwene asked quietly. Siuan had considered lying to her? She would have had her hide for that. But her anger was gone. “I don’t condone lying, Siuan. Not normally. It’s just that sometimes, it really is necessary.” Her time with the Aiel flashed through her mind. “So long as you’re willing to pay for it, anyway. I’ve seen sisters take on penance for smaller things. You are one of the first of a new sort of Aes Sedai, Siuan, free and unbound. I believe you when you say you won’t lie to me.” Or to Lord Bryne? Odd, that. “Why give up your freedom?”
“Give up?” Siuan laughed. “I’ll be giving up nothing.” Her back straightened, and her voice began to gain strength, and then passion. “The Oaths are what make us more than simply a group of women meddling in the affairs of the world. Or seven groups. Or fifty. The Oaths hold us together, a stated set of beliefs that bind us all, a single thread running through every sister, living or dead, back to the first to lay her hands on the Oath Rod. They are what make us Aes Sedai, not saidar. Any wilder can channel. Men may look at what we say from six sides, but when a sister says, ‘This is so,’ they know it’s true, and they trust. Because of the Oaths. Because of the Oaths, no queen fears that sisters will lay waste to her cities. The worst villain knows he’s safe in his life with a sister unless he tries to harm her. Oh, the Whitecloaks call them lies, and some people have strange ideas about what the Oaths entail, but there are very few places an Aes Sedai cannot go, and be listened to, because of the Oaths. The Three Oaths are what it is to be Aes Sedai, the heart of being Aes Sedai. Throw that on the rubbish heap, and we’ll be sand washing away in the tide. Give up? I will be gaining.”
Egwene frowned. “And the Seanchan?” What it was to be Aes Sedai. Almost from the day she first arrived in Tar Valon, she had worked to be Aes Sedai, but she had never really thought about what it was that made a woman Aes Sedai.
Once more Siuan laughed, though this time it was a touch wry, and weary. She shook her head, and darkness or no, looked tired. “I don’t know, Mother. The Light help me, I don’t. But we survived the Trolloc Wars, and Whitecloaks, and Artur Hawkwing, and everything in between. We can find a way to deal with these Seanchan. Without destroying ourselves.”
Egwene was not so sure. Many of the sisters in camp thought the Seanchan were such a danger that besieging Elaida should wait. As if waiting would not cement Elaida on the Amyrlin Seat. Many others seemed to think that simply uniting the White Tower again, at whatever price, would make the Seanchan vanish. Survival lost some of its attraction if it was survival on a leash, and Elaida’s would not be much less confining than the Seanchan’s. What it was to be Aes Sedai.
“There’s no need to keep Gareth Bryne at arm’s length,” Siuan said suddenly. “The man’s a walking tribulation, it’s true. If he doesn’t count as penance for my lies, being flayed alive wouldn’t do. One of these days, I’ll box his ears every morning and twice at evenings, on general principle, but you can tell him everything. It would help, if he understood. He’s taking you on trust, and it ties his stomach in knots, wondering whether you know what you’re doing. He doesn’t let on, but I see.”
Suddenly, pieces clicked in Egwene’s mind like a blacksmith’s puzzle coming undone. Shocking pieces. Siuan was in love with the man! Nothing else made sense. Everything she knew between them altered. Not necessarily for the better. A woman in love often put her brains on the shelf when she was around the man in question. As she herself was all too well aware. Where was Gawyn? Was he well? Was he warm? Enough of that. Too much, in light of what she had to say. She put on her best Amyrlin’s voice, sure and in command. “You can box Lord Bryne’s ears or bed him, Siuan, but you will watch yourself with him. You will not let slip things he mustn’t know yet. Do you understand me?”
Siuan jerked stiffly erect. “I’m not in the habit of letting my tongue flap like a torn sail, Mother,” she said heatedly.
“I’m very glad to hear it, Siuan.” Despite their looking only a few years apart, Siuan was old enough to be her mother, yet at that moment Egwene felt as though their ages had been reversed. This might be the first time that Siuan had ever had to manage with a man not as Aes Sedai, but as a woman. A few years of thinking I loved Rand, Egwene thought wryly, a few months of dangling by my toes for Gawyn, and I know all there is to know.
“I think we’re done here,” she went on, slipping an arm through Siuan’s. “Almost. Come.”
The walls of the tent had seemed little protection, yet stepping outside brought a renewed assault by winter’s teeth. The moonlight was almost bright enough to read by, reflected off the snow, but that glow seemed cold. Bryne had vanished as if he had never been. Leane appeared long enough to say she had seen no one, her slimness swallowed in layers of wool, then hurried off into the night looking about her. No one knew of any connection between Leane and Egwene, and everyone thought Leane and Siuan were practically at daggers’ points.
Gathering her cloak as best she could one-handed, Egwene focused on ignoring the icy chill as she and Siuan walked in the opposite direction from Leane. Ignoring the chill, and keeping an eye out for anyone who happened to be out. Not that anyone who was outside now was likely to be there by happenstance.
“Lord Bryne was right,” she told Siuan, “about it being better if Pelivar and Arathelle believed those stories. Or at least if they were uncertain. Too uncertain to fight, or do anything except talk. Do you think they would welcome a visit from Aes Sedai? Siuan, are you listening to me?”
Siuan gave a start, and stopped staring into the distance ahead of them. She had been walking ahead without missing a step, but now she slipped and nearly sat down in the frozen path, barely regaining her balance in time to keep from pulling Egwene down. “Yes, Mother. Of course I’m listening. They might not be exactly welcoming, but I doubt they’ll turn sisters away.”
“Then I want you to wake Beonin, Anaiya, and Myrelle. They are to ride north inside the hour. If Lord Bryne expects a reply as soon as tomorrow evening, time is short.” A pity she had not found out exactly where this other army was located, but asking Bryne might have roused suspicion. Finding it should not be too hard for Warders, and those three sisters had five between them.
Siuan listened in silence to her instructions. Not only those three were to be rooted out of their sleep. Come dawn, Sheriam and Carlinya, Morvrin and Nisao would all know what to say over breakfast. Seeds had to be planted, seeds that could not have been placed earlier for fear of them sprouting too soon, but now they had all too little time to grow.
“It will be a pleasure to haul them out of their blankets,” Siuan said when she was done. “If I have to tramp around in this . . . ” Releasing Egwene’s arm, she started to turn away, then stopped, her face serious, even grim. “I know you want to be a second Gerra Kishar—or maybe Sereille Bagand. You have it in you to match either. But be careful you don’t turn out to be another Shein Chunla. Good night, Mother. Sleep well.”
Egwene stood watching her go, a cloak-shrouded figure sometimes skidding on the path and muttering angrily almost loud enough to make out. Gerra and Sereille were remembered as among the greatest Amyrlins. Both had raised the influence and prestige of the White Tower to levels seldom equaled since before Artur Hawkwing. Both controlled the Tower itself, too, Gerra by skillfully playing one faction in the Hall against another, Sereille by the sheer force of her will. Shein Chunla was another matter, one who had squandered the power of the Amyrlin Seat, alienating most of the sisters in the Tower. The world believed that Shein had died in office, close on four hundred years ago, but the deeply hidden truth was that she had been deposed and sent into exile for life. Even the secret histories treaded lightly in certain areas, yet it was fairly obvious that, after the fourth plot to restore her to the Amyrlin Seat was uncovered, the sisters guarding Shein had smothered her in her sleep with a pillow. Egwene shivered, and told herself it was the cold.
Turning, she began making her slow way back to her tent alone. Sleep well? The fat moon hung low in the sky, and there were hours yet till sunrise, but she was not sure she was going to be able to sleep at all.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113488-general/topic/thanks.20for.20.60finset.2Esum_bij.60.html ---
I want to thank @Mario Carneiro and @Johannes Hölzl for finset.sum_bij
. That theorem is extremely useful! Very prescient. :thumbs_up: :octopus: :muscle:
Last updated: Apr 24 2020 at 19:02 UTC


This menu provides access to the global features.
It provides an alternative method of executing the key driven commands.
Orthogonal Direction Tab
East D
North E
West S
South X
Higher V
Lower F
Skew Direction Tab
RightR
Up W
Left Z
DownC
Segment functions
Delete Del
Delete LastBackspace
Undelete Insert
Primitive functions
Mend M
Delete Del
New AttributeN
Get Number #
Get String $
Snaps
Q-EngageQ
A-EngageA
B-MidpointB
J- ----->| J
T-Surface / tanT


{{ movie.title }} ({{ movie.theater_date|date:"Y" }})
{{ genre|join:", " }}
{{ movie.synopsis|slice:":180" }}... more
Actors: {% for actor in actors %} {{ actor.name }}{% if not forloop.last %},{% endif %} {% endfor %}
Director{{ directors|pluralize }}: {% for director in directors %} {{ director.name }}{% if not forloop.last %},{% endif %} {% endfor %}
{% if my_reviews %}
Your Raves, Re-Raves, and Thanks
-
{% for review in my_reviews %}
{% include "movie_review.html" %}
{% endfor %}
{% if friend_reviews %}
Raves by Your Friends
-
{% for review in friend_reviews %}
{% include "movie_review.html" %}
{% endfor %}
{% if friend_agrees %}
Re-Raved by Your Friends
-
{% for agree in friend_agrees %}
{% include "movie_agree.html" %}
{% endfor %}
{% if global_reviews %}
The Rest of the Best
-
{% for review in global_reviews %}
{% include "movie_review.html" %}
{% endfor %}


SunPKCS11
ProviderSUN
ProviderSunRsaSign
ProviderSunJSSE
ProviderSunJCE
ProviderSunJGSS
ProviderSunSASL
ProviderXMLDSig
ProviderSunPCSC
ProviderSunMSCAPI
ProviderSunEC
ProviderNote: The Standard Names Documentation contains more information about the standard names used in this document.
The Java platform defines a set of APIs spanning major security areas, including cryptography, public key infrastructure, authentication, secure communication, and access control. These APIs allow developers to easily integrate security mechanisms into their application code. The Java Cryptography Architecture (JCA) and its Provider Architecture is a core concept of the Java Development Kit (JDK). It is assumed readers have a solid understanding of this architecture.
This document describes the technical details of the providers shipped as part of Oracle's Java Environment.
getInstance("...", "SunJCE"); // not recommended vs. getInstance("..."); // recommendedOtherwise, applications are tied to specific providers that may not be available on other Java implementations. They also might not be able to take advantage of available optimized providers (for example, hardware accelerators via PKCS11 or native OS implementations such as Microsoft's MSCAPI) that have a higher preference order than the specific requested provider.
Due to import regulations in some countries, the Oracle implementation provides a default cryptographic jurisdiction policy file that limits the strength of cryptographic algorithms. Here are the maximum key sizes allowed by this "strong" version of the jurisdiction policy files:
| Algorithm | Maximum Keysize |
|---|---|
| DES | 64 |
| DESede | * |
| RC2 | 128 |
| RC4 | 128 |
| RC5 | 128 |
| RSA | * |
| all others | 128 |
If stronger algorithms are needed (for example, AES with 256-bit keys), the JCE Unlimited Strength Jurisdiction Policy Files must be obtained and installed in the JDK/JRE.
It is the user's responsibility to verify that this action is permissible under local regulations.
SunPKCS11
ProviderThe Cryptographic Token Interface Standard ( PKCS#11) provides
native programming interfaces to cryptographic mechanisms, such as
hardware cryptographic accelerators and Smart Cards. When properly
configured, the SunPKCS11
provider enables
applications to use the standard JCA/JCE APIs to access native
PKCS#11 libraries. The SunPKCS11
provider itself
does not contain cryptographic functionality, it is simply a
conduit between the Java environment and the native PKCS11
providers. The Java PKCS#11 Reference
Guide has a much more detailed treatment of this provider.
SUN
ProviderJDK 1.1 introduced the Provider
architecture. The
first JDK provider was named SUN
, and contained two
types of cryptographic services (MessageDigest
s and
Signature
s). In later releases, other mechanisms were
added (SecureRandom
number generators,
KeyPairGenerator
s, KeyFactory
s, and so
on.).
United States export regulations in effect at the time placed
significant restrictions on the type of cryptographic functionality
that could be made available internationally in the JDK. For this
reason, the SUN
provider has historically contained
cryptographic engines that did not directly encrypt or decrypt
data.
The following algorithms are available in the SUN
provider:
| Engine | Algorithm Names |
|---|---|
AlgorithmParameterGenerator |
DSA |
AlgorithmParameters |
DSA |
CertificateFactory |
X.509 |
CertPathBuilder |
PKIX |
CertPathValidator |
PKIX |
CertStore |
Collection LDAP |
Configuration |
JavaLoginConfig |
KeyFactory |
DSA |
KeyPairGenerator |
DSA |
KeyStore |
JKS |
MessageDigest |
MD2 MD5 SHA-1 SHA-256 SHA-384 SHA-512 |
Policy |
JavaPolicy |
SecureRandom |
SHA1PRNG |
Signature |
NONEwithDSA SHA1withDSA |
The SUN
provider uses the following default
keysizes (in bits) and enforces the following restrictions:
KeyPairGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| DSA | 1024 | Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive). |
AlgorithmParameterGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| DSA | 1024 | Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive). |
CertificateFactory
/CertPathBuilder
/
CertPathValidator
/CertStore
ImplementationsAdditional details on the SUN
provider
implementations for CertificateFactory
,
CertPathBuilder
, CertPathValidator
and
CertStore
are documented in Appendix B of the PKI
Programmer's Guide.
SunRsaSign
ProviderThe SunRsaSign
provider was introduced in JDK 1.3
as an enhanced replacement for the RSA signatures in the SunJSSE
provider.
The following algorithms are available in the
SunRsaSign
provider:
| Engine | Algorithm Names |
|---|---|
KeyFactory |
RSA |
KeyPairGenerator |
RSA |
Signature |
MD2withRSA MD5withRSA SHA1withRSA SHA256withRSA SHA384withRSA SHA512withRSA |
The SunRsaSign
provider uses the following default
keysize (in bits) and enforces the following restriction:
KeyPairGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| RSA | 1024 | Keysize must range between 512 and 65536 bits, the latter of which is unnecessarily large. |
SunJSSE
ProviderThe Java Secure Socket Extension (JSSE) was originally released
as a separate "Optional Package" (also briefly known as a "Standard
Extension"), and was available for JDK 1.2.n and
1.3.n. The SunJSSE
provider was introduced as
part of this release.
In earlier JDK releases, there were no RSA signature providers
available in the JDK, therefore SunJSSE
had to provide
its own RSA implementation in order to use commonly available
RSA-based certificates. JDK 5 introduced the
SunRsaSign
provider, which provides all the
functionality (and more) of the SunJSSE
provider.
Applications targeted at JDK 5.0 and later should request instances
of the SunRsaSign
provider instead. For backward
compatibility, the RSA algorithms are still available through this
provider, but are actually implemented in the
SunRsaSign
provider.
The following algorithms are available in the
SunJSSE
provider:
| Engine | Algorithm Name(s) |
|---|---|
KeyFactory |
|
KeyManagerFactory |
|
KeyPairGenerator |
|
KeyStore |
|
Signature |
|
SSLContext |
|
TrustManagerFactory |
|
The SunJSSE
supports the following
protocol
parameters:
| Protocol | Enabled by Default for Client | Enabled by Default for Server |
|---|---|---|
| SSLv3 | Yes | Yes |
| TLSv1 | Yes | Yes |
| TLSv1.1 Footnote 1 | No | Yes |
| TLSv1.2 Footnote 1 | No | Yes |
| SSLv2Hello Footnote 2 | No | Yes |
Footnote 1Although SunJSSE
in the Java SE 7
release supports TLS 1.1 and TLS 1.2, neither version is enabled by
default for client connections. Some servers do not implement
forward compatibility correctly and refuse to talk to TLS 1.1 or
TLS 1.2 clients. For interoperability, SunJSSE
does
not enable TLS 1.1 or TLS 1.2 by default for client
connections.
Server connections have no such interoperability problem. TLS 1.1 and TLS 1.2 are enabled by default for server connections.
Footnote 2The SSLv3, TLSv1, and TLSv1.1 protocols allow you to send SSLv3, TLSv1, and TLSv1.1 hellos encapsulated in an SSLv2 format hello.
SunJSSE
supports a large number of cipher suites.
The two tables that follow show the cipher suites supported by
SunJSSE in preference order and the release in which they were
introduced.
The first table lists the cipher suites that are enable by default. The second table shows cipher suites that are supported by SunJSSE but disabled by default.
| Cipher Suite | J2SE v1.4 | J2SE v1.4.1, v1.4.2 | J2SE 5.0 | Java SE 6 | Java SE 7 |
|---|---|---|---|---|---|
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 |
XFootnote 1 | ||||
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 |
XFootnote 1 | ||||
TLS_RSA_WITH_AES_256_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384 |
XFootnote 1 | ||||
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384 |
XFootnote 1 | ||||
TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 |
XFootnote 1 | ||||
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA |
X | X | |||
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
X | X | |||
TLS_RSA_WITH_AES_256_CBC_SHA |
X | X | X | X | |
TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA |
X | X | |||
TLS_ECDH_RSA_WITH_AES_256_CBC_SHA |
X | X | |||
TLS_DHE_RSA_WITH_AES_256_CBC_SHA |
X | X | X | X | |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA |
X | X | X | X | |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_RSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 |
XFootnote 1 | ||||
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA |
X | X | |||
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
X | X | |||
TLS_RSA_WITH_AES_128_CBC_SHA |
X | X | X | X | |
TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA |
X | X | |||
TLS_ECDH_RSA_WITH_AES_128_CBC_SHA |
X | X | |||
TLS_DHE_RSA_WITH_AES_128_CBC_SHA |
X | X | X | X | |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA |
X | X | X | X | |
TLS_ECDHE_ECDSA_WITH_RC4_128_SHA |
X | X | |||
TLS_ECDHE_RSA_WITH_RC4_128_SHA |
X | X | |||
SSL_RSA_WITH_RC4_128_SHA |
X | X | X | X | X |
TLS_ECDH_ECDSA_WITH_RC4_128_SHA |
X | X | |||
TLS_ECDH_RSA_WITH_RC4_128_SHA |
X | X | |||
TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA |
X | X | |||
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA |
X | X | |||
SSL_RSA_WITH_3DES_EDE_CBC_SHA |
X | X | X | X | X |
TLS_ECDH_ECDSA_WITH_3DES_EDE_CBC_SHA |
X | X | |||
TLS_ECDH_RSA_WITH_3DES_EDE_CBC_SHA |
X | X | |||
SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA |
X | X | X | X | |
SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA |
X | X | X | X | X |
SSL_RSA_WITH_RC4_128_MD5 |
X | X | X | X | X |
TLS_EMPTY_RENEGOTIATION_INFO_SCSV 2 |
1.4.2u28+ | u26+ | u22+ | X |
Footnote 1 Cipher suites with SHA384 and SHA256 are available only for TLS 1.2 or later.
Footnote 2
TLS_EMPTY_RENEGOTIATION_INFO_SCSV
is a new
pseudo-cipher suite to support RFC 5746. See the Transport
Layer Security (TLS) Renegotiation Issue section of the JSEE
Reference Guide for more information.
| Cipher Suite | J2SE v1.4 | J2SE v1.4.1, v1.4.2 | J2SE 5.0 | Java SE 6 | Java SE 7 |
|---|---|---|---|---|---|
TLS_DH_anon_WITH_AES_256_CBC_SHA256 |
X | ||||
TLS_ECDH_anon_WITH_AES_256_CBC_SHA |
X | X | |||
TLS_DH_anon_WITH_AES_256_CBC_SHA |
X | X | X | X | |
TLS_DH_anon_WITH_AES_128_CBC_SHA256 |
X | ||||
TLS_ECDH_anon_WITH_AES_128_CBC_SHA |
X | X | |||
TLS_DH_anon_WITH_AES_128_CBC_SHA |
X | X | X | X | |
TLS_ECDH_anon_WITH_RC4_128_SHA |
X | X | |||
SSL_DH_anon_WITH_RC4_128_MD5 |
X | X | X | X | X |
TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA |
X | X | |||
SSL_DH_anon_WITH_3DES_EDE_CBC_SHA |
X | X | X | X | X |
TLS_RSA_WITH_NULL_SHA256 |
X | ||||
TLS_ECDHE_ECDSA_WITH_NULL_SHA |
X | X | |||
TLS_ECDHE_RSA_WITH_NULL_SHA |
X | X | |||
SSL_RSA_WITH_NULL_SHA |
X | X | X | X | X |
TLS_ECDH_ECDSA_WITH_NULL_SHA |
X | X | |||
TLS_ECDH_RSA_WITH_NULL_SHA |
X | X | |||
TLS_ECDH_anon_WITH_NULL_SHA |
X | X | |||
SSL_RSA_WITH_NULL_MD5 |
X | X | X | X | X |
SSL_RSA_WITH_DES_CBC_SHA |
X | X | X | X | XFootnote 1 |
SSL_DHE_RSA_WITH_DES_CBC_SHA |
X | X | X | XFootnote 1 | |
SSL_DHE_DSS_WITH_DES_CBC_SHA |
X | X | X | X | XFootnote 1 |
SSL_DH_anon_WITH_DES_CBC_SHA |
X | X | X | X | XFootnote 1 |
SSL_RSA_EXPORT_WITH_RC4_40_MD5 |
X | X | X | X | XFootnote 2 |
SSL_DH_anon_EXPORT_WITH_RC4_40_MD5 |
X | X | X | X | XFootnote 2 |
SSL_RSA_EXPORT_WITH_DES40_CBC_SHA |
X | X | X | XFootnote 2 | |
SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA |
X | X | X | XFootnote 2 | |
SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA |
X | X | X | X | XFootnote 2 |
SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA |
X | X | X | X | XFootnote 2 |
TLS_KRB5_WITH_RC4_128_SHA |
X | X | X | ||
TLS_KRB5_WITH_RC4_128_MD5 |
X | X | X | ||
TLS_KRB5_WITH_3DES_EDE_CBC_SHA |
X | X | X | ||
TLS_KRB5_WITH_3DES_EDE_CBC_MD5 |
X | X | X | ||
TLS_KRB5_WITH_DES_CBC_SHA |
X | X | XFootnote 1 | ||
TLS_KRB5_WITH_DES_CBC_MD5 |
X | X | XFootnote 1 | ||
TLS_KRB5_EXPORT_WITH_RC4_40_SHA |
X | X | XFootnote 2 | ||
TLS_KRB5_EXPORT_WITH_RC4_40_MD5 |
X | X | XFootnote 2 | ||
TLS_KRB5_EXPORT_WITH_DES_CBC_40_SHA |
X | X | XFootnote 2 | ||
TLS_KRB5_EXPORT_WITH_DES_CBC_40_MD5 |
X | X | XFootnote 2 |
Footnote 1 RFC 5246 TLS 1.2 forbids the use of these suites. These can be used in the SSLv3/TLS1.0/TLS1.1 protocols, but cannot be used in TLS 1.2 and later.
Footnote 2 RFC 4346 TLS 1.1 forbids the use of these suites. These can be used in the SSLv3/TLS1.0 protocols, but cannot be used in TLS 1.1 and later.
Cipher suites that use AES_256 require installation of the JCE Unlimited Strength Jurisdiction Policy Files. See Import Limits on Cryptographic Algorithms.
Cipher suites that use Elliptic Curve Cryptography (ECDSA, ECDH, ECDHE, ECDH_anon) require a JCE cryptographic provider that meets the following requirements:
The provider must implement ECC as defined by the classes and
interfaces in the packages java.security.spec
and
java.security.interfaces
. The
getAlgorithm()
method of elliptic curve key objects
must return the string "EC".
The provider must support the Signature
algorithms
SHA1withECDSA and NONEwithECDSA, the KeyAgreement
algorithm ECDH, and a KeyPairGenerator
and a
KeyFactory
for algorithm EC. If one of these
algorithms is missing, SunJSSE will not allow EC cipher suites to
be used.
The provider must support all the SECG curves referenced in
RFC 4492
specification, section 5.1.1 (see also appendix A). In
certificates, points should be encoded using the uncompressed form
and curves should be encoded using the namedCurve
choice, that is, using an object identifier.
If these requirements are not met, EC cipher suites may not be negotiated correctly.
Prior to the Java SE 7 release, the SSL/TLS implementation did
not check the version number in PreMasterSecret, and the SSL/TLS
client did not send the correct version number by default. Unless
the system property
com.sun.net.ssl.rsaPreMasterSecretFix
is set to
true
, the TLS client sends the active negotiated
version, but not the expected maximum version supported by the
client.
For compatibility, this behavior is preserved for SSL version
3.0 and TLS version 1.0. However, for TLS version 1.1 or later, the
implementation tightens checking the PreMasterSecret version
numbers as required by RFC 5246. Clients always
send the correct version number, and servers check the version
number strictly. The system property,
com.sun.net.ssl.rsaPreMasterSecretFix
, is not used in
TLS 1.1 or later.
SunJCE
ProviderAs described briefly in The
SUN
Provider, US export regulations at the time
restricted the type of cryptographic functionality that could be
made available in the JDK. A separate API and reference
implementation was developed that allowed applications to
encrypt/decrypt data. The Java Cryptographic Extension (JCE) was
released as a separate "Optional Package" (also briefly known as a
"Standard Extension"), and was available for JDK 1.2.x and 1.3.x.
During the development of JDK 1.4, regulations were relaxed enough
that JCE (and SunJSSE) could be bundled as part of the JDK.
The following algorithms are available in the SunJCE provider:
| Engine | Algorithm Names |
|---|---|
AlgorithmParameterGenerator |
DiffieHellman |
AlgorithmParameters |
AES Blowfish DES DESede DiffieHellman OAEP PBEWithMD5AndDES PBEWithMD5AndTripleDES PBEWithSHA1AndDESede PBEWithSHA1AndRC2_40 RC2 |
Cipher |
See the Cipher table. |
KeyAgreement |
DiffieHellman |
KeyFactory |
DiffieHellman |
KeyGenerator |
AES ARCFOUR Blowfish DES DESede HmacMD5 HmacSHA1 HmacSHA256 HmacSHA384 HmacSHA512 RC2 |
KeyPairGenerator |
DiffieHellman |
KeyStore |
JCEKS |
Mac |
HmacMD5 HmacSHA1 HmacSHA256 HmacSHA384 HmacSHA512 |
SecretKeyFactory |
DES DESede PBEWithMD5AndDES PBEWithMD5AndTripleDES PBEWithSHA1AndDESede PBEWithSHA1AndRC2_40 PBKDF2WithHmacSHA1 |
The following table lists cipher algorithms available in the SunJCE provider.
| Algorithm Name | Modes | Paddings |
|---|---|---|
| AES | ECB, CBC, PCBC, CTR, CTS, CFB, CFB8..CFB128, OFB, OFB8..OFB128 | NOPADDING, PKCS5PADDING, ISO10126PADDING |
| AESWrap | ECB | NOPADDING |
| ARCFOUR | ECB | NOPADDING |
| Blowfish, DES, DESede, RC2 | ECB, CBC, PCBC, CTR, CTS, CFB, CFB8..CFB64, OFB, OFB8..OFB64 | NOPADDING, PKCS5PADDING, ISO10126PADDING |
| DESedeWrap | CBC | NOPADDING |
| PBEWithMD5AndDES, PBEWithMD5AndTripleDES1 PBEWithSHA1AndDESede, PBEWithSHA1AndRC2_40 | CBC | PKCS5Padding |
| RSA | ECB | NOPADDING, PKCS1PADDING, OAEPWITHMD5ANDMGF1PADDING, OAEPWITHSHA1ANDMGF1PADDING, OAEPWITHSHA-1ANDMGF1PADDING, OAEPWITHSHA-256ANDMGF1PADDING, OAEPWITHSHA-384ANDMGF1PADDING, OAEPWITHSHA-512ANDMGF1PADDING |
1 PBEWithMD5AndTripleDES is a proprietary algorithm that has not been standardized.
The SunJCE provider uses the following default keysizes (in bits) and enforces the following restrictions:
KeyGenerator
| Algorithm Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| AES | 128 | Keysize must be equal to 128, 192, or 256. |
| ARCFOUR (RC4) | 128 | Keysize must range between 40 and 1024 (inclusive). |
| Blowfish | 128 | Keysize must be a multiple of 8, ranging from 32 to 448 (inclusive). |
| DES | 56 | Keysize must be equal to 56. |
| DESede (Triple DES) | 168 | Keysize must be equal to 112 or 168.
A keysize of 112 will generate a Triple DES key with 2 intermediate keys, and a keysize of 168 will generate a Triple DES key with 3 intermediate keys. Due to the "Meet-In-The-Middle" problem, even though 112 or 168 bits of key material are used, the effective keysize is 80 or 112 bits respectively. |
| HmacMD5 | 512 | No keysize restriction. |
| HmacSHA1 | 512 | No keysize restriction. |
| HmacSHA256 | 256 | No keysize restriction. |
| HmacSHA384 | 384 | No keysize restriction. |
| HmacSHA512 | 512 | No keysize restriction. |
| RC2 | 128 | Keysize must range between 40 and 1024 (inclusive). |
NOTE: The various Password-Based Encryption (PBE) algorithms use various algorithms to generate key data, and ultimately depends on the targeted Cipher algorithm. For example, "PBEWithMD5AndDES" will always generate 56-bit keys.
KeyPairGenerator
| Algorithm Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| Diffie-Hellman (DH) | 1024 | Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive). |
AlgorithmParameterGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| Diffie-Hellman (DH) | 1024 | Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive). |
| DSA | 1024 | Keysize must be a multiple of 64, ranging from 512 to 1024 (inclusive). |
SunJGSS
ProviderThe following algorithms are available in the
SunJGSS
provider:
| OID | Name |
|---|---|
1.2.840.1135<IP_ADDRESS> |
Kerberos v5 |
<IP_ADDRESS>.5.5.2 |
SPNEGO |
SunSASL
ProviderThe following algorithms are available in the
SunSASL
provider:
| Engine | Algorithm Names |
|---|---|
SaslClient |
CRAM-MD5 DIGEST-MD5 EXTERNAL GSSAPI PLAIN |
SaslServer |
CRAM-MD5 DIGEST-MD5 GSSAPI |
XMLDSig
ProviderThe following algorithms are available in the
XMLDSig
provider:
| Engine | Algorithm Names |
|---|---|
KeyInfoFactory |
DOM |
TransformService |
http://www.w3.org/TR/2001/REC-xml-c14n-20010315 -
(CanonicalizationMethod.INCLUSIVE )http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments - ( CanonicalizationMethod.INCLUSIVE_WITH_COMMENTS )http://www.w3.org/2001/10/xml-exc-c14n# - ( CanonicalizationMethod.EXCLUSIVE )http://www.w3.org/2001/10/xml-exc-c14n#WithComments - ( CanonicalizationMethod.EXCLUSIVE_WITH_COMMENTS )http://www.w3.org/2000/09/xmldsig#base64 - ( Transform.BASE64 )http://www.w3.org/2000/09/xmldsig#enveloped-signature - ( Transform.ENVELOPED )http://www.w3.org/TR/1999/REC-xpath-19991116 - ( Transform.XPATH )http://www.w3.org/2002/06/xmldsig-filter2 - ( Transform.XPATH2 )http://www.w3.org/TR/1999/REC-xslt-19991116 - ( Transform.XSLT ) |
XMLSignatureFactory |
DOM |
SunPCSC
ProviderThe SunPCSC provider enables applications to use the Java Smart Card I/O API to interact with the PC/SC Smart Card stack of the underlying operating system. On some operating systems, it may be necessary to enable and configure the PC/SC stack before it is usable. Consult your operating system documentation for details.
On Solaris and Linux platforms, SunPCSC accesses the PC/SC stack
via the libpcsclite.so
library. It looks for this
library in the directories /usr/$LIBISA
and
/usr/local/$LIBISA
, where $LIBISA
is
expanded to lib
on 32-bit platforms,
lib/64
on 64-bit Solaris platforms, and
lib64
on 64-bit Linux platforms. The system property
sun.security.smartcardio.library
may also be set to
the full filename of an alternate libpcsclite.so
implementation. On Windows platforms, SunPCSC always calls into
winscard.dll
and no Java-level configuration is
necessary or possible.
If PC/SC is available on the host platform, the SunPCSC
implementation can be obtained via
TerminalFactory.getDefault()
and
TerminalFactory.getInstance("PC/SC")
. If PC/SC is not
available or not correctly configured, a getInstance()
call will fail with a NoSuchAlgorithmException
and
getDefault()
will return a JRE built-in implementation
that does not support any terminals.
The following algorithms are available in the
SunPCSC
provider:
| Engine | Algorithm Names |
|---|---|
TerminalFactory |
PC/SC |
SunMSCAPI
ProviderThe SunMSCAPI provider enables applications to use the standard JCA/JCE APIs to access the native cryptographic libraries, certificates stores and key containers on the Microsoft Windows platform. The SunMSCAPI provider itself does not contain cryptographic functionality, it is simply a conduit between the Java environment and the native cryptographic services on Windows.
The following algorithms are available in the
SunMSCAPI
provider:
| Engine | Algorithm Names |
|---|---|
Cipher |
RSA RSA/ECB/PKCS1Padding only |
KeyPairGenerator |
RSA |
KeyStore |
Windows-MY The keystore type that identifies the native Microsoft Windows MY keystore. It contains the user's personal certificates and associated private keys. Windows-ROOTThe keystore type that identifies the native Microsoft Windows ROOT keystore. It contains the certificates of Root certificate authorities and other self-signed trusted certificates. |
SecureRandom |
Windows-PRNG
The name of the native pseudo-random number generation (PRNG) algorithm. |
Signature |
MD5withRSA MD2withRSA NONEwithRSA SHA1withRSA SHA256withRSA SHA384withRSA SHA512withRSA |
The SunMSCAPI provider uses the following default keysizes (in bits) and enforce the following restrictions:
KeyGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| RSA | 1024 | Keysize ranges from 512 bits to 16,384 bits (depending on the underlying Microsoft Windows cryptographic service provider). |
SunEC
ProviderThe SunEC provider implements Elliptical Curve Cryptography (ECC). ECC is emerging as an attractive public-key cryptosystem for mobile/wireless and other environments. Compared to traditional cryptosystems like RSA, ECC offers equivalent security with smaller key sizes, which results in faster computations, lower power consumption, as well as memory and bandwidth savings.
Applications can now use the standard JCA/JCE APIs to access ECC functionality without the dependency on external ECC libraries(via SunPKCS11), as was the case in the JDK 6 release.
The following algorithms are available in the SunEC
provider:
| Engine | Algorithm Name(s) |
|---|---|
AlgorithmParameters |
EC |
KeyAgreement |
ECDH |
KeyFactory |
EC |
KeyPairGenerator |
EC |
Signature |
NONEwithECDSA SHA1withECDSA SHA256withECDSA SHA384withECDSA SHA512withECDSA |
The SunEC provider uses the following default keysizes (in bits) and enforces the following restrictions:
KeyPairGenerator
| Alg. Name | Default Keysize | Restrictions/Comments |
|---|---|---|
| EC | 256 | Keysize must range from 112 to 571 (inclusive). |


Ramaphosa reveals he missed Mapimpi's historic try due to badly timed bathroom break
One of the last places a president would want to be when his country's national team makes history in a Rugby World Cup final would be the loo. But that is where President Cyril Ramaphosa found himself after a badly timed bathroom break at the Yokohama Stadium in Japan.
FOLLOW LIVE | You enable us to live our dreams and play rugby, Kolisi tells MTN #championstogether
In the 66th minute of the final, wing Makazole Mapimpi became the first Springbok rugby player to score a try in a World Cup final, as South Africa beat England 32-12 on Saturday to claim the Webb Ellis Cup – their third in as many finals.
Ramaphosa, who was at the stadium in Japan, revealed to the Bok squad that, because of his own nerves, he had missed the first try as he made a run to the bathroom. He made the remarks as the Boks began their trophy parade at the Union Buildings on Thursday.
"During the match, I was nervous," Ramaphosa told the squad as he hosted them at the Union Buildings.
"When they scored their first try, I had gone to the 'gents' because of my nervousness," he said to a chuckling crowd.
Ramaphosa also revealed his interaction with the players and coaches when he met them before the match: "[Bok captain] Siya [Kolisi] told me he was nervous, [coach] Rassie Erasmus told me he was shaking like a leaf and some players were telling me they were nervous."
The president said he hadn't bought any of it, because "when I looked into their eyes and shook their hands, I saw victory written in their eyes".
Ramaphosa called the Boks "warriors" who "went to war", carrying the South African flag with pride.
"Forward with the Boks, forward," the president exclaimed.
The Boks have begun their trophy parade through the streets of the capital city, Pretoria, and will conclude on Monday in Cape Town, with visits to Durban, Port Elizabeth and East London along the way
- Compiled by Kamva Somdyala


-
Developing Creative AI to Generate Sculptural Objects
Ge, Songwei,
Dill, Austin,
Kang, Eunsu,
Li, Chun-Liang,
Zhang, Lingyao,
Zaheer, Manzil,
and Poczos, Barnabas
arXiv preprint arXiv:1908.07587
2019
-
Getting Topology and Point Cloud Generation to Mesh
Dill, Austin,
Li, Chun-Liang,
Ge, Songwei,
and Kang, Eunsu
arXiv preprint arXiv:1912.03787
2019
-
Learned Interpolation for 3D Generation
Dill, Austin,
Ge, Songwei,
Kang, Eunsu,
Li, Chun-Liang,
and Poczos, Barnabas
arXiv preprint arXiv:1912.10787
2019


NerveLife.com Template for none commercial use!!
NerveLife
Services
(current)
About
Contact
Freelance Software Developer
Hello, The World!
Building Static Websites with Node.js
Visit nervelife.com for more details...
Hello, the world!


Paul Smith Joins Leica Again for a Second Collaborative Limited Edition
A colorful take on an understated silhouette.
by Jeff YeungBritish fashion house Paul Smith has linked up once again with German camera maker Leica for a second collaboration, electing the modern Leica CL as their canvas.
While the technical specs of the camera remain unchanged — a 24-megapixel sensor, 4K video recording capabilities, and a standard Elmarit-TL 18mm f/2.8 ASPH lens — its aesthetic design is very much Paul Smith. Painting the top panel of the camera in bright blue, the fashion brand included a playful etching of an eye atop the viewfinder. Near the bottom beneath the classic black leather body wrapping are three muted colored stripes — a classic pattern from the British designer. As a final touch, written on the back of the camera is the phrase “look and see,” a tribute to Smith’s famous quote: “many people look, but often they don’t see.”
For those interested, the Leica CL “Edition Paul Smith” — limited to 900 units — is now available over on Paul Smith’s website, retailing for $3,995 USD.
Elsewhere in the world of Leicas, the brand has also released a limited edition M Monochrom in tribute to 150 years of Ernst Leitz.


Code for Change
Level 1
UN Sustainable Dev Goals
Level 2
Intro to Weebly
Level 3
Build a HTML/CSS Website
Build an Android App
Level 4
Clone for Change
Level 5
Code for a nonprofit
Contribute to Open Source Projects


This purpose-built resort town and marina lies about 10nm east of Albufeira. It is a popular stop for those setting off accross the Atlantic or for anyone wishing to leave the boat in a secure port for a while.
Position 37°04.1'N,08°07.3'W.
For clearance, yachts must come alongside the reception dock on the port side in front of the control tower. For one night stops it is possible to check in and out at the same time.
All paperwork (ships papers, passports and insurance) is carried out at marina office.
Last updated January 2016.
The wide entrance leads into an outer basin from which a narrower entrance leads to the marina. The shelter here is very good but in strong southerlies, the wide entrance can be dangerous.
Be sure to identify the correct entrance as that of the fishing port is close by. There is a large, conspicous hotel to the E of the marina entrance.
On arrival, berth at the reception pontoon and report to the office.
There is no anchoring in the outer harbour.
Last updated January 2016.


public interface NoteManagement
Note: Usage of this class directly is prohibited. To avoid errors
NoteService
should be used.
| Modifier and Type | Field and Description |
|---|---|
static String |
CONSTANT_MENTION_DISCUSSION_PARTICIPANTS
Pattern used for mention all discussion participants.
|
static String |
CONSTANT_MENTION_TOPIC_AUTHORS
Pattern used for mention all users with at least one note within the topic.
|
static String |
CONSTANT_MENTION_TOPIC_MANAGERS
Pattern used for mention all managers of the topic.
|
static String |
CONSTANT_MENTION_TOPIC_READERS
Pattern used for mention all users with at least read access to the topic.
|
static String |
USER_NOTE_PROPERTY_KEY_LIKE
Property key for the like feature.
|
| Modifier and Type | Method and Description |
|---|---|
void |
correctTopicOfComment(Long noteId)
Corrects the topic of a comment note if it does not equal the topic of the discussion root
note.
|
NoteModificationResult |
createNote(NoteStoringTO noteStoringTO,
Set<String> additionalBlogNameIds)
Creates a note from the supplied transfer object.
|
void |
deleteAutosave(Long noteId)
Deletes an autosave identified by the passed ID.
|
void |
deleteNote(Long noteId,
boolean deleteSystemPosts,
boolean clientManagerCanDelete)
Deletes a user tagged post and all its comments.
|
Set<Long> |
deleteNotesOfUser(Long userId)
Delete all notes and drafts of a user.
|
AutosaveNoteData |
getAutosave(Long noteId,
Long parentNoteId,
Collection<StringPropertyTO> properties,
Locale locale)
Return an autosave of the current user.
|
List<SimpleNoteListItem> |
getCommentsOfDiscussion(Long noteId)
Returns all the notes of a discussion excluding the root note.
|
Long |
getDiscussionId(Long noteId)
Returns the ID of the discussion the note is part of.
|
<T> T |
getNote(Long noteId,
Converter<Note,T> converter)
Method to get a specific note.
|
NoteData |
getNote(long noteId,
NoteRenderContext renderContext) |
long |
getNoteCount()
Returns the number of notes created within the current client.
|
DiscussionNoteData |
getNoteWithComments(Long noteId,
QueryResultConverter<SimpleNoteListItem,DiscussionNoteData> converter)
Returns a note with its comments which are ordered according to the provided converter.
|
int |
getNumberOfNotesInDiscussion(Long noteId)
Returns the number of notes in a discussion.
|
int |
getNumberOfReplies(Long noteId)
Returns the number of replies to a note.
|
void |
moveToTopic(Long discussionId,
Long topicId)
Method to move a given discussion to another topic.
|
boolean |
noteExists(Long noteId)
Checks whether a note exists.
|
void |
updateFollowableItems(Long noteId,
boolean updateChildren)
Update the followable items of a given note and optionally although of its children.
|
void |
updateLastDiscussionCreationDate(Long noteId,
Timestamp creationDate)
Method to update the last discussion creation date.
|
NoteModificationResult |
updateNote(NoteStoringTO noteStoringTO,
Long noteId,
Set<String> additionalBlogNameIds)
Updates an existing note with the data of the supplied transfer object.
|
static final String CONSTANT_MENTION_DISCUSSION_PARTICIPANTS
static final String CONSTANT_MENTION_TOPIC_MANAGERS
static final String CONSTANT_MENTION_TOPIC_AUTHORS
static final String CONSTANT_MENTION_TOPIC_READERS
static final String USER_NOTE_PROPERTY_KEY_LIKE
void correctTopicOfComment(Long noteId)
noteId
- ID of the comment note that was created or updatedNoteModificationResult createNote(NoteStoringTO noteStoringTO, Set<String> additionalBlogNameIds) throws BlogNotFoundException, NoteManagementAuthorizationException, NoteStoringPreProcessorException
noteStoringTO
- The note to create.additionalBlogNameIds
- set of blog aliases for creating crossposts. These aliases will be ignore, if the
note is a comment to another note.BlogNotFoundException
- in case the target blog does not existNoteManagementAuthorizationException
- in case the user is not authorized to create the note, for instance if he has no
write access to the target blogNoteStoringPreProcessorException
- in case one of the pre processors failedvoid deleteAutosave(Long noteId) throws NoteManagementAuthorizationException
noteId
- The notes id.NoteManagementAuthorizationException
- Thrown, when it is not possible to access the note.void deleteNote(Long noteId, boolean deleteSystemPosts, boolean clientManagerCanDelete) throws NoteManagementAuthorizationException
noteId
- Id of the note to delete.deleteSystemPosts
- If true system notes will also be deleted.clientManagerCanDelete
- If true notes will also be deleted, if the current user is a client manager.NoteManagementAuthorizationException
- Thrown, when the user is not allowed to access the note.Set<Long> deleteNotesOfUser(Long userId) throws AuthorizationException
userId
- ID of the user whose notes should be deletedAuthorizationException
- in case the current user is not the internal system user, the client manager or
the creator of the notesAutosaveNoteData getAutosave(Long noteId, Long parentNoteId, Collection<StringPropertyTO> properties, Locale locale)
noteId
- the ID of a note to get the autosave of the edit operation of this note. Can be
null.parentNoteId
- the ID of a parent note to get the autosave of a comment to this note. Can be
null.properties
- properties which should be used to get filters for finding an autosave. The
filters are resolved with the help of the registered
AutosavePropertyFilterProvider
the re
Can be null.locale
- the locale to use when filling localizable content of the note like tagsList<SimpleNoteListItem> getCommentsOfDiscussion(Long noteId) throws NoteNotFoundException
noteId
- the ID of the note whose discussion will be evaluatedNoteNotFoundException
- in case the note does not existLong getDiscussionId(Long noteId) throws NoteNotFoundException
noteId
- the ID of the note for which the discussion ID should be returnedNoteNotFoundException
- in case the note does not existNoteData getNote(long noteId, NoteRenderContext renderContext) throws NoteNotFoundException, AuthorizationException
noteId
- The note id.renderContext
- The rendering context. If the render mode of the context is null, no
NoteRenderingPreProcessors will be called.NoteNotFoundException
- Thrown, when there is no note for this id.AuthorizationException
- Thrown, when the user is not allowed to access the note.<T> T getNote(Long noteId, Converter<Note,T> converter)
T
- Type of the return value.noteId
- The notes id.converter
- The converter to convert the note.long getNoteCount()
DiscussionNoteData getNoteWithComments(Long noteId, QueryResultConverter<SimpleNoteListItem,DiscussionNoteData> converter) throws NoteNotFoundException, AuthorizationException
noteId
- the id of the note to retrieveconverter
- the converter to use for filling the commentsNoteNotFoundException
- if the requested note does not existAuthorizationException
- if the current user has no read access to the noteint getNumberOfNotesInDiscussion(Long noteId) throws NoteNotFoundException
noteId
- the ID of the note whose discussion will be evaluatedNoteNotFoundException
- in case the note does not existint getNumberOfReplies(Long noteId) throws NoteNotFoundException
noteId
- the ID of the noteNoteNotFoundException
- Thrown, when the note doesn't exist.void moveToTopic(Long discussionId, Long topicId) throws NoteManagementAuthorizationException
discussionId
- Id of the discussion to move.topicId
- If of the new topic.NoteManagementAuthorizationException
- Thrown, when the use isn't allowed to write within the given topic.boolean noteExists(Long noteId)
noteId
- the ID of the note to retrievevoid updateFollowableItems(Long noteId, boolean updateChildren)
noteId
- Id of the note to update.updateChildren
- If true, all children will be updated too.void updateLastDiscussionCreationDate(Long noteId, Timestamp creationDate)
noteId
- Id of the note, which is part of the discussion.creationDate
- The new date to set.NoteModificationResult updateNote(NoteStoringTO noteStoringTO, Long noteId, Set<String> additionalBlogNameIds) throws BlogNotFoundException, NoteNotFoundException, NoteManagementAuthorizationException, NoteStoringPreProcessorException
noteStoringTO
- The note to create.noteId
- the ID of the note to updateadditionalBlogNameIds
- set of blog aliases for creating crossposts. These aliases will be ignore, if the
note is a comment to another note.BlogNotFoundException
- in case the target blog does not existNoteNotFoundException
- in case the note to update does not existNoteManagementAuthorizationException
- in case the user is not authorized to update the note, for instance if he has no
write access to the blog or is not the author of the noteNoteStoringPreProcessorException
- in case one of the pre processors failedCopyright © 2019 Communote team. All rights reserved.


--- layout: post title: Neverwinter Nights post_id: 313 categories: - reviews date: 2004-02-25 02:33:00.000000000 -07:00 author: Jamis permalink: 2004/2/25/neverwinter-nights.html ---
I purchased Neverwinter Nights about a year ago, during a period of time when I was feeling “D&D deprivation” particularly acutely. It’s been a blast to play, and I’ve really enjoyed it.
For Christmas, Tarasine got me the “Shadows of Udrentide” expansion pack, and that was fun to play. Like the original single-player campaign, you start out at first level and work your way up. I think I managed to get to level 12 or so by the end of that one—just high enough to start getting access to the really powerful spells and equipment.
Last week I purchased the “Hordes of the Underdark” expansion pack, and I must admit it is exceptional. In it, you play a high-level character (mine is currently a 22nd level Wizard) who is “dungeon delving” to solve a mystery. Lots of cool magical items, monsters, and spells (my favorite so far is “Finger of Death”, although the “Dragon Knight” epic spell is pretty slick, too).
It’s been a great way to pass the time when I’m up at 2 in the morning with Katie. I hold her on my lap and feed her with one hand, and with the other I point-and-click my way through the various baddies and beasties of the Underdark of Faerun.


|
Totally Not Mario 2D!
1.0
LCOM 2020/2021 T08G01
|
Go to the source code of this file.
Data Structures | |
| struct | AnimSprite |
Functions | |
| AnimSprite * | create_asprite (unsigned no_pic, xpm_map_t frames[]) |
| Creates an AnimSprite. More... | |
| void | draw_asprite (AnimSprite *sprite, uint8_t frame_no, int x, int y) |
| Draws sprite's animation frame frame_no at position (x, y) More... | |
| void | destroy_asprite (AnimSprite *sp) |
| Destroys argument AnimSprite. More... | |


|
JB.Toolkit
A collection of useful classes, extensions and tools written in C# to aid in a wide variety of development. With components for ASP Net MVC, Winform and Console applications. Integrations for Google, AD and SQL and pre-written implementations / helpers for a variety of tasks... Just Because.
|
Classes | |
| class | CommonFileTypeExtensions |
| An every growing list of common file type / format extensions | |
| class | DirectoryHelper |
| Class containing methods to retrieve specific file system paths. | |
| class | FastDirectoryEnumerator |
| A fast enumerator of files in a directory. Use this if you need to get attributes for all files in a directory. | |
| class | FileData |
| Contains information about a file returned by the FastDirectoryEnumerator class. /// Got code from here: https://www.codeproject.com/Articles/38959/A-Faster-Directory-Enumerator More... | |
| class | ProcessHelper |
| class | ServiceHelper |
| Contain method for remote reliably manipulating Windows Services. You will likely need to use impersonatation when calling i.e: More... | |
| class | UacHelper |
| Mainly used to determine if a process is running with elevated (i.e. admin) permissions. Useful if we want to prevent the user from going any futher in the program execution unless they are an adminstrator | |
| class | WIN32_FIND_DATA |
| Contains information about the file that is found by the FindFirstFile or FindNextFile functions. | |
| class | WindowHelper |
| As in the actual program Window rather then the 'Windows' operating system... Used to focus windows (bring to front etc) More... | |
Enumerations | |
| enum | KnownFolder { KnownFolder.Contacts, KnownFolder.Desktop, KnownFolder.Documents, KnownFolder.Favorites, KnownFolder.Links, KnownFolder.Music, KnownFolder.Pictures, KnownFolder.SavedGames, KnownFolder.SavedSearches, KnownFolder.Videos, KnownFolder.Fonts, KnownFolder.PublicFolder, KnownFolder.ThreeDObjects, KnownFolder.Downloads } |
| Standard folders registered with the system. These folders are installed with Windows Vista and later operating systems, and a computer will have only folders appropriate to it installed. More... | |
| enum | ContextType { ContextType.Application, ContextType.HttpContext } |
| Specify application or website / web service context More... | |
|
strong |
|
strong |
Standard folders registered with the system. These folders are installed with Windows Vista and later operating systems, and a computer will have only folders appropriate to it installed.
| Enumerator | |
|---|---|
| Contacts | |
| Desktop | |
| Documents | |
| Favorites | |
| Links | |
| Music | |
| Pictures | |
| SavedGames | |
| SavedSearches | |
| Videos | |
| Fonts | |
| PublicFolder | |
| ThreeDObjects | |
| Downloads |


BalticWeb uses cookies
If you want to use the site, you have to accept the use of cookies and local storage. Go to BalticWeb and choose OK to accept cookies.
If you want to use the site, you have to accept the use of cookies and local storage. Go to BalticWeb and choose OK to accept cookies.


Oliver the RoboArm
Rotate & Tilt to move Oliver. Touch the screen to Grab.
X =
Y =
Z =
Grab
Grabbing!


Tender Exchange
You give us some money and we'll convert it into any currency you'd like
Here are the Codes
USD to Money Abroad
How many US Dollars do you want to convert?
Type in the three letter country code. Example: NZD.
Pass it along to the math wizards.
Any Currency Exchange
How much money do you want to convert?
Type in the three letter country code for current currency.
Type in the three letter country code for the new currency.
Pass it along to the international math wizards.


Catalog Managers can delete a product category from the Store module using the Store Admin module.
Tip: You cannot delete categories with child categories. In this scenario, you must first delete the child category, change the child category to a parent category, or associate the child category with a different parent category.


Reliable, efficient delivery
Powered by Technology
Our Artificial Intelligence powered tools use millions of project data
points to ensure that your project is successful
Supervisor
Monitors activity to identify project roadblocks
Team Builder
Scans our talent network to create the optimal team for your project
Karma
Regularly evaluates our talent to ensure quality
Calculator
Uses data from past projects to provide better delivery estimates


Class: Aws::OpsWorksCM::Types::Backup
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
Struct
|
|
|
Instance Chain:
self,
Struct
|
|
| Inherits: |
Struct
|
| Defined in: | (unknown) |
Overview
Instance Attribute Summary
-
#backup_arn ⇒ String
rw
The ARN of the backup.
-
#backup_id ⇒ String
rw
The generated ID of the backup.
-
#backup_type ⇒ String
rw
The backup type.
-
#created_at ⇒ Time
rw
The time stamp when the backup was created in the database.
-
#description ⇒ String
rw
A user-provided description for a manual backup.
-
#engine ⇒ String
rw
The engine type that is obtained from the server when the backup is created.
-
#engine_model ⇒ String
rw
The engine model that is obtained from the server when the backup is created.
-
#engine_version ⇒ String
rw
The engine version that is obtained from the server when the backup is created.
-
#instance_profile_arn ⇒ String
rw
The EC2 instance profile ARN that is obtained from the server when the backup is created.
-
#instance_type ⇒ String
rw
The instance type that is obtained from the server when the backup is created.
-
#key_pair ⇒ String
rw
The key pair that is obtained from the server when the backup is created.
-
#preferred_backup_window ⇒ String
rw
The preferred backup period that is obtained from the server when the backup is created.
-
#preferred_maintenance_window ⇒ String
rw
The preferred maintenance period that is obtained from the server when the backup is created.
-
#s3_data_size ⇒ Integer
rw
This field is deprecated and is no longer used.
-
#s3_data_url ⇒ String
rw
This field is deprecated and is no longer used.
-
#s3_log_url ⇒ String
rw
The Amazon S3 URL of the backup's log file.
-
#security_group_ids ⇒ Array<String>
rw
The security group IDs that are obtained from the server when the backup is created.
-
#server_name ⇒ String
rw
The name of the server from which the backup was made.
-
#service_role_arn ⇒ String
rw
The service role ARN that is obtained from the server when the backup is created.
-
#status ⇒ String
rw
The status of a backup while in progress.
-
#status_description ⇒ String
rw
An informational message about backup status.
-
#subnet_ids ⇒ Array<String>
rw
The subnet IDs that are obtained from the server when the backup is created.
-
#tools_version ⇒ String
rw
The version of AWS OpsWorks for Chef Automate-specific tools that is obtained from the server when the backup is created.
-
#user_arn ⇒ String
rw
The IAM user ARN of the requester for manual backups.
Instance Attribute Details
#backup_arn ⇒ String
(rw)
The ARN of the backup.
#backup_id ⇒ String
(rw)
The generated ID of the backup. Example: myServerName-yyyyMMddHHmmssSSS
#backup_type ⇒ String
(rw)
The backup type. Valid values are automated
or manual
.
Possible values:
- AUTOMATED
- MANUAL
#created_at ⇒ Time
(rw)
The time stamp when the backup was created in the database. Example: 2016-07-29T13:38:47.520Z
#description ⇒ String
(rw)
A user-provided description for a manual backup. This field is empty for automated backups.
#engine ⇒ String
(rw)
The engine type that is obtained from the server when the backup is created.
#engine_model ⇒ String
(rw)
The engine model that is obtained from the server when the backup is created.
#engine_version ⇒ String
(rw)
The engine version that is obtained from the server when the backup is created.
#instance_profile_arn ⇒ String
(rw)
The EC2 instance profile ARN that is obtained from the server when the backup is created. Because this value is stored, you are not required to provide the InstanceProfileArn again if you restore a backup.
#instance_type ⇒ String
(rw)
The instance type that is obtained from the server when the backup is created.
#key_pair ⇒ String
(rw)
The key pair that is obtained from the server when the backup is created.
#preferred_backup_window ⇒ String
(rw)
The preferred backup period that is obtained from the server when the backup is created.
#preferred_maintenance_window ⇒ String
(rw)
The preferred maintenance period that is obtained from the server when the backup is created.
#s3_data_size ⇒ Integer
(rw)
This field is deprecated and is no longer used.
#s3_data_url ⇒ String
(rw)
This field is deprecated and is no longer used.
#s3_log_url ⇒ String
(rw)
The Amazon S3 URL of the backup's log file.
#security_group_ids ⇒ Array
<String
> (rw)
The security group IDs that are obtained from the server when the backup is created.
#server_name ⇒ String
(rw)
The name of the server from which the backup was made.
#service_role_arn ⇒ String
(rw)
The service role ARN that is obtained from the server when the backup is created.
#status ⇒ String
(rw)
The status of a backup while in progress.
Possible values:
- IN_PROGRESS
- OK
- FAILED
- DELETING
#status_description ⇒ String
(rw)
An informational message about backup status.
#subnet_ids ⇒ Array
<String
> (rw)
The subnet IDs that are obtained from the server when the backup is created.
#tools_version ⇒ String
(rw)
The version of AWS OpsWorks for Chef Automate-specific tools that is obtained from the server when the backup is created.
#user_arn ⇒ String
(rw)
The IAM user ARN of the requester for manual backups. This field is empty for automated backups.


Hacia una nueva globalización
February 21, 2021Today we are facing a historical situation where there is a big debate about how to organize our socio-geographical space, and by that, we are witnessing an important confrontation between localists, nationalists, internationalists, transnationalists and globalist ideas, and within these there are also struggles between different inner trends.
Regarding the nationalist visions, they have a basic principle related with will to return to the old nation-state centered global order, following orientations such as a strong national identity, xenophobia and economic protectionism.
From the opposite pole, we can see globalist visions, that are based on the principle of taking planet earth as a common organizational entity, and by that, they make emphasis in the unrestricted movement of people between regions, the creation of some common culture and the structuring of joint decision-making organizations at the global level.
Our presentAt the present, we are stuck in a failed pseudo-internationalist global order that been capable of solving the most important issues that we are facing as a civilization, like environmental problems, global economic crises, global warfare, inequalities between regions and countries, epidemics and many other issues that day by day are becoming worse.
In the meanwhile, we are beginning to see a strong re-emergence of nationalist movements as a reaction to the negative consequences of the previous process of neoliberal oriented globalization that had been developing since the nineties, which due to its internal contradictions such as inequality, economic crises and cultural relativism, have given rise to these ultranationalist movements that we see today.
These nationalistic movements probably will not remain strong in the long run, since they are unable to solve the various emerging problems that we face today, but in the meanwhile, they have become a serious threat to global peace and environmental sustainability.
Emergent global problemsToday we are not only facing long-standing problems such as poverty or local pollution, we are also witnessing new and very dangerous issues of different nature that will have a very negative global impact if we don't do sufficient action towards them, here we point out the following:
Climate change. Due to the massive emission of greenhouse gases that we are making for many decades, our planet is starting to overheat, which has become a serious existential threat -especially for the most vulnerable regions-. To solve anthropogenic climate change we will require doing large-scale global-collective action aimed to prevent and reduce the continuous and growing emission of these greenhouse gases.
Ecosystemic destruction. Faced with the continuous trend of resource overconsumption and the high population growth rate, the ecosystem that supports life on this planet is being destroyed by multiple processes like deforestation, resource depletion, the massive dropping of toxic residues, and many other devastating actions that are intrinsic to our present economic system and our living culture, which in combination are causing serious problems like the deadly urban pollution or the mass extinction of species. To solve this, we need to establish new environmental regulations at the global level, in contamination with massive plans of ecosystem restoration and protection.
Mass migrations. he migratory phenomena that we are seeing today it's an enormous humanitarian problem that we have, mainly caused by wars and the enormous economic asymmetries between central and peripheral countries, by which people are escaping in mass from those problematic countries, even risking their own lives. To solve this, it will be necessary to stop the conflicts situated in those places, create efficient means to transfer resources from rich countries to poor ones, and also begin to build a common global identity in order to enable the migrants to have the opportunity to live with people from all over the globe under common values.
Epidemiological situations. Nowadays, epidemics are not constrained on a local or regional place as they were in the past, differently they can quickly emerge and expand from one place to another due to the fast and dense means of transport that we have today, and because of that epidemics are almost impossible to control at the local or national level. To solve this issue we need to create supra-national effective function organizations that have the capacity to action easily in any part of the planet.
Problems related to new technologies. In recent times, we are seeing the emergence of new problems related to the application of technology and science in general, such as technological unemployment, the application of bioengineering and their ethical dilemmas, issues related to data protection and surveillance, or the application of artificial intelligence to warfare. By their nature, these problems do not respect any national boundary and will require global actions and mechanisms to mitigate their negative effects.
Economic crisis and inequality. Phenomena such as inequality, poverty or economic crises no longer affect only one country, now they have repercussions throughout the entire planet, and to solve them it will be necessary to implement resource redistribution mechanisms of different nature, multiple global regulations in certain key areas and organize collective social action on a large scale in relation to many issues that we need to address.
Weaponization of the planet. The growing weaponization of the planet is also a problem that does not respect borders, especially those related to weapons of mass destruction such as nuclear weapons or the new generation of weapons related to the application of artificial intelligence, advanced robotics or cyberwarfare. To solve this problem we need to establish a new global legal framework and promote a global pacific culture, things that only can be done with supranational government styled institutions.
Previous ways of thinking cannot solve emerging problemsNot only have these old proposals failed to efficiently solve old problems -even after a long time-, but also they are incapable of responding to the new problematic issues that will emerge in the near future, that are much more complex than the previous ones.
Firstly is more than clear that nationalist ideas do not have solutions for any of these problems, since they operate on a much smaller scale than the repercussions of these global problems, and since they cannot solve them, they underestimate or even deny those types of problems.
Secondly, internationalists and transnationalists trains of thought are not going to be able to solve these problems either, because both deny the necessity to build a collective global culture and government-styled participatory organizations that are needed to deal with these global problems.
So as none of these frameworks can solve the old-persistent problems and even less the newly emerging ones, it is necessary for us to create and develop a new framework of thinking and action, which has to be based on principles like glocalism (globalism combined with localism), equality, participation and substantiality, that jointly have to be aimed at creating a global common culture with their respective organizational and institutional systems oriented to solve the very difficult problems that we face as a species.
What does the future hold for us?The future is not something pre-determined, it depends on the actions we carry out, here we identify three possible different historical courses:
a. Return to a nationalistic type of global order, which will cause a rapid collapse due to imminent issues such as warfare or enviromental collapse.
b. Remain in this pseudo-internationalist type of global order that now it's very clear that cannot address effectively the global problems that we face such as environmental collapse, inequalities between regions, growing warfare or epidemic situations.
c. Move forward towards a new globalization based on the principles of glocalism, equality, environmentalism and a supranational horizontal participation, that may allow opening new horizons of opportunities oriented to solving the global problems that we face as a civilization.


In the world of cryptocurrencies, there is a major threat known as the 51% attack. Numerous currencies have suffered from such attacks, and the year 2018 has been no different in this regard. It now seems one particular user is intent on attacking Einsteinium next week. The e...


Indicates the progress of the relative index of each panel.
{{ code1 }}
panel.getOutsetProgress()
When panel is completely invisible, outsetProgress becomes -1 at left(up), 1 at right(down) direction, and 0 when panel's anchor and hanger is overlapped.
{{ code2 }}
panel.getVisibleRatio()
Indicates the percentage of areas within the viewport that the panel occupies.


VIDEO GAME SALES HISTORY
Welcome to our Video Game History Visualization
×
Have you ever thought about creating a game or investing in a game?


Decoder FitFileDecoder FIT File Decoder See more Declaration Swift public struct FitFileDecoder © 2017 Kevin A. Hoogheem Generated by jazzy ♪♫ v0.9.0, a Realm project.


Pizza
Choose a size
Choose one
Small
Medium
Large
Toppings - meat
Pepperoni
Sausage
Chicken
Bacon
Toppings - veggies
Spinach
Peppers
Olives
Onions
Jalapenos
Submit order


@@include('../include/header.html', {"logged": false, "slug": "home"}) @@include('../include/components/home-hero-block.html') @@include('../include/footer.html')