`Legally Blonde' -- Blondes Do Have More Fun by Homer Yen (c) 2001
Seldom are lighthearted comedies so smooth and enjoyable to watch as `Legally Blonde,' a very palatable comedy that is both cute and funny. Underneath its exterior of cutesy silliness, there is inner beauty as well.  The film's heart and mind show intelligence, warmth and a great deal of appeal.
So too does it's lead character, Elle Woods (Reese Witherspoon), whose effervescent personality and sunny disposition make her thoroughly likeable. Alas, because of her radiant blonde hair and her love for all things pink, she is mistakenly assumed to be a ditzy airhead. Okay, she may be the spitting image of a Barbie doll, a TOTALLY popular member of her sorority (whose membership seems to require that you are blonde, fit, and wear belly-button exposing outfits), and considers fashion mag Cosmopolitan to be her bible. However, she has a 4.0 grade point average, is brilliant when it comes to merchandising, and is an aspiring fashion designer.
But that's not enough for her long-time beau and selfish cad, Warner (Matthew Davis), who has just been accepted to the prestigious Harvard School of Law. `I need someone serious,' he coldly says and then breaks up with her. From this moment on, she sets out on a mission to prove that she is good enough for him, and more importantly, that she can rise above the fluffiness of her own lifestyle.
She sacrifices the party life in favor of LSAT study sessions and submits a hilarious video essay on why she would make a great lawyer. Witherspoon is adorable and possesses a girl-next-door demeanor that gives her an endearing charm. We care about you! We feel for you!
Up to this point, smiles are a sure thing. But it gets even funnier once our determined freshman arrives at Harvard. The poor thing is just not prepared for the rigors of academia. Hollywood and Harvard just don't mix and she quickly becomes the subject of ridicule by both teachers and students alike. While everyone else brings laptops to class, she brings a heart-shaped notebook with pink, feathery frills. She is immediately challenged by a catty coed (Selma Blair) and has a difficult time gaining acceptance among her other classmates.
But don't underestimate Elle, who has a mind as sharp as a hairdresser's safety pin and a heart as big as Texas. She studies rigorously, and soon she's going nose-to-nose with the snobbish elite over Socratic principles of law. She even garners a highly coveted internship at a top firm where she assists in defending a client in a celebrity murder case. Incredibly, the defendant is a former sorority sister, and Elle's background allows her to have the psychological insight that eludes the other lawyers.
Yet while she discovers new frontiers of determination and develops a new sense of focus, she never forgets about the virtues of friendship and helping others. This is brought forth in a cute side story involving an aging manicurist who is still waiting to meet Mr. Right. Elle imparts a hilarious lesson on how to attract guys by using a bend and snap motion. She possesses brains, beauty and a bubbly sense of humor. And `Legally Blonde' does too.
Grade: B+
S: 1 out of 3 L: 1 out of 3 V: 0 out of 3
========== X-RAMR-ID: 28932 X-Language: en X-RT-ReviewID: 237114 X-RT-TitleID: 1108857 X-RT-AuthorID: 1370 X-RT-RatingText: B+
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


About Me:
Mark Ferree
@mrf
How do we turn:
I love computers!
Into:
I bend computers to my will!
Barriers to working on open source
- Knowing a programming language well
- Using source control
- How to set up a dev environment
- Issue tracking software
- Patch management
- Written English
- Negotiation skills
Start Reading
https://www.flickr.com/photos/cdevers/5702488800
Go Back to School
https://www.flickr.com/photos/jdhancock/3371243601
Get a Job
https://www.flickr.com/photos/sarahbelle1/3442747012
I just want to make a website...
- Off the shelf look and feel OK?
- Can you follow tutorials online?
- Love clicking checkboxes?
You're already a site builder
Site Builders:
- Use functionality built by others
- Don't have too many custom requirements
- Don't necessarily know any code
- Love clicking checkboxes
Site builders are encouraged to contribute by:
Testing and QA'ing new functionality and bug fixes
But I really don't like how my site looks
- Learn some HTML
- Learn some CSS
- Learn Drupal's theme layer
- Learn a bit of PHP for the theme layer
Themers:
- Stay in the presentation layer
- Don't have too many custom requirements
Themers are encouraged to contribute by:
Testing and QA'ing new functionality and bug fixes
Contributing code to front end issues
Now I need something custom
- Learn some more PHP
- Learn Drupal's APIs and Hook System
- Learn Git
- Learn how to create and apply patches
Now you're a module developer
Module developers are encouraged to contribute by:
Testing and QA'ing new functionality and bug fixes
Fixing issues in existing modules
Drupal itself really doesn't meet my needs
- Learn a lot more PHP
- Learn most of Drupals APIs and Hooks
- Learn negotiation in module issue queues
Now you're a core developer
- Know a programming language ✔
- Using source control ✔
- How to set up a dev environment ✔
- Issue tracking software ✔
- Patch management ✔
- Written English ✔
- Negotiation skills ✔
Everyone goes as many layers deep as they are comfortable with
Some start out with many or all of these skills
How does the Drupal community help encourage the progression to happen?
Meetups
Camps
Conferences
Books
Video Tutorials
Trainings
Not all rainbows and unicorns
https://www.flickr.com/photos/rachelrusinski/2699175117
Object Oriented
Configuration Management System
Symfony
Doctrine
Guzzle
Twig
PHPUnit
9090 Modules To Be Ported
https://www.flickr.com/photos/nanagyei/6744708487
All contributions are important
Users need to be engaged as well as developers
Those with the skills != those with the time to contribute


Reports on any call to
Object.wait()
for which no call to a corresponding
Object.notify()
or
Object.notifyAll()
can be found. Only calls which target fields of the current class are reported by this inspection.
Powered by InspectionGadgets


Losses¶
pytorch-widedeep
accepts a number of losses and objectives that can be
passed to the Trainer
class via the parameter objective
(see pytorch-widedeep.training.Trainer
). For most cases the loss function
that pytorch-widedeep
will use internally is already implemented in
Pytorch.
In addition, pytorch-widedeep
implements a series of "custom" loss
functions. These are described below for completion since, as mentioned
before, they are used internally by the Trainer
. Of course, onen could
always use them on their own and can be imported as:
from pytorch_widedeep.losses import FocalLoss
NOTE: Losses in this module expect the predictions and ground truth to have the same dimensions for regression and binary classification problems \((N_{samples}, 1)\). In the case of multiclass classification problems the ground truth is expected to be a 1D tensor with the corresponding classes. See Examples below
MSELoss ¶
MSELoss()
Bases: nn.Module
Mean square error loss with the option of using Label Smooth Distribution (LDS)
LDS is based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
25 26 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions
-
target
(
Tensor
) –Target tensor with the actual values
-
lds_weight
(
Optional[Tensor]
) –Tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import MSELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> lds_weight = torch.tensor([0.1, 0.2, 0.3, 0.4]).view(-1, 1)
>>> loss = MSELoss()(input, target, lds_weight)
Source code in pytorch_widedeep/losses.py
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
|
MSLELoss ¶
MSLELoss()
Bases: nn.Module
Mean square log error loss with the option of using Label Smooth Distribution (LDS)
LDS is based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
65 66 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –Tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import MSLELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> lds_weight = torch.tensor([0.1, 0.2, 0.3, 0.4]).view(-1, 1)
>>> loss = MSLELoss()(input, target, lds_weight)
Source code in pytorch_widedeep/losses.py
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
|
RMSELoss ¶
RMSELoss()
Bases: nn.Module
Root mean square error loss adjusted for the possibility of using Label Smooth Distribution (LDS)
LDS is based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
112 113 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –Tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import RMSELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> lds_weight = torch.tensor([0.1, 0.2, 0.3, 0.4]).view(-1, 1)
>>> loss = RMSELoss()(input, target, lds_weight)
Source code in pytorch_widedeep/losses.py
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
|
RMSLELoss ¶
RMSLELoss()
Bases: nn.Module
Root mean square log error loss adjusted for the possibility of using Label Smooth Distribution (LDS)
LDS is based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
152 153 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –Tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import RMSLELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> lds_weight = torch.tensor([0.1, 0.2, 0.3, 0.4]).view(-1, 1)
>>> loss = RMSLELoss()(input, target, lds_weight)
Source code in pytorch_widedeep/losses.py
155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
|
QuantileLoss ¶
QuantileLoss(
quantiles=[0.02, 0.1, 0.25, 0.5, 0.75, 0.9, 0.98]
)
Bases: nn.Module
Quantile loss defined as:
All credits go to the implementation at pytorch-forecasting.
Parameters:
-
quantiles
(
List[float]
) –List of quantiles
Source code in pytorch_widedeep/losses.py
207 208 209 210 211 212 |
|
forward ¶
forward(input, target)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions
-
target
(
Tensor
) –Target tensor with the actual values
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import QuantileLoss
>>>
>>> # REGRESSION
>>> target = torch.tensor([[0.6, 1.5]]).view(-1, 1)
>>> input = torch.tensor([[.1, .2,], [.4, .5]])
>>> qloss = QuantileLoss([0.25, 0.75])
>>> loss = qloss(input, target)
Source code in pytorch_widedeep/losses.py
214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 |
|
FocalLoss ¶
FocalLoss(alpha=0.25, gamma=1.0)
Bases: nn.Module
Implementation of the Focal loss for both binary and multiclass classification:
where, for a case of a binary classification problem
Parameters:
-
alpha
(
float
) –Focal Loss
alpha
parameter -
gamma
(
float
) –Focal Loss
gamma
parameter
Source code in pytorch_widedeep/losses.py
274 275 276 277 |
|
forward ¶
forward(input, target)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import FocalLoss
>>>
>>> # BINARY
>>> target = torch.tensor([0, 1, 0, 1]).view(-1, 1)
>>> input = torch.tensor([[0.6, 0.7, 0.3, 0.8]]).t()
>>> loss = FocalLoss()(input, target)
>>>
>>> # MULTICLASS
>>> target = torch.tensor([1, 0, 2]).view(-1, 1)
>>> input = torch.tensor([[0.2, 0.5, 0.3], [0.8, 0.1, 0.1], [0.7, 0.2, 0.1]])
>>> loss = FocalLoss()(input, target)
Source code in pytorch_widedeep/losses.py
284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 |
|
BayesianSELoss ¶
BayesianSELoss()
Bases: nn.Module
Squared Loss (log Gaussian) for the case of a regression as specified in the original publication Weight Uncertainty in Neural Networks.
Source code in pytorch_widedeep/losses.py
352 353 |
|
forward ¶
forward(input, target)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import BayesianSELoss
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = BayesianSELoss()(input, target)
Source code in pytorch_widedeep/losses.py
355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 |
|
TweedieLoss ¶
TweedieLoss()
Bases: nn.Module
Tweedie loss for extremely unbalanced zero-inflated data
All credits go to Wenbo Shi. See this post and the original publication for details.
Source code in pytorch_widedeep/losses.py
384 385 |
|
forward ¶
forward(input, target, lds_weight=None, p=1.5)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions
-
target
(
Tensor
) –Target tensor with the actual values
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
-
p
(
float
) –the power to be used to compute the loss. See the original publication for details
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import TweedieLoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> lds_weight = torch.tensor([0.1, 0.2, 0.3, 0.4]).view(-1, 1)
>>> loss = TweedieLoss()(input, target, lds_weight)
Source code in pytorch_widedeep/losses.py
387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 |
|
ZILNLoss ¶
ZILNLoss()
Bases: nn.Module
Adjusted implementation of the Zero Inflated LogNormal Loss
See A Deep Probabilistic Model for Customer Lifetime Value Prediction and the corresponding code.
Source code in pytorch_widedeep/losses.py
442 443 |
|
forward ¶
forward(input, target)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions with spape (N,3), where N is the batch size
-
target
(
Tensor
) –Target tensor with the actual target values
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import ZILNLoss
>>>
>>> target = torch.tensor([[0., 1.5]]).view(-1, 1)
>>> input = torch.tensor([[.1, .2, .3], [.4, .5, .6]])
>>> loss = ZILNLoss()(input, target)
Source code in pytorch_widedeep/losses.py
445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 |
|
L1Loss ¶
L1Loss()
Bases: nn.Module
L1 loss adjusted for the possibility of using Label Smooth Distribution (LDS)
LDS is based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
507 508 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions
-
target
(
Tensor
) –Target tensor with the actual values
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import L1Loss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = L1Loss()(input, target)
Source code in pytorch_widedeep/losses.py
510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 |
|
FocalR_L1Loss ¶
FocalR_L1Loss(beta=0.2, gamma=1.0, activation_fn='sigmoid')
Bases: nn.Module
Focal-R L1 loss
Based on Delving into Deep Imbalanced Regression.
Parameters:
-
beta
(
float
) –Focal Loss
beta
parameter in their implementation -
gamma
(
float
) –Focal Loss
gamma
parameter -
activation_fn
(
Literal[sigmoid, tanh]
) –Activation function to be used during the computation of the loss. Possible values are 'sigmoid' and 'tanh'. See the original publication for details.
Source code in pytorch_widedeep/losses.py
557 558 559 560 561 562 563 564 565 566 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import FocalR_L1Loss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = FocalR_L1Loss()(input, target)
Source code in pytorch_widedeep/losses.py
568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 |
|
FocalR_MSELoss ¶
FocalR_MSELoss(
beta=0.2, gamma=1.0, activation_fn="sigmoid"
)
Bases: nn.Module
Focal-R MSE loss
Based on Delving into Deep Imbalanced Regression.
Parameters:
-
beta
(
float
) –Focal Loss
beta
parameter in their implementation -
gamma
(
float
) –Focal Loss
gamma
parameter -
activation_fn
(
Literal[sigmoid, tanh]
) –Activation function to be used during the computation of the loss. Possible values are 'sigmoid' and 'tanh'. See the original publication for details.
Source code in pytorch_widedeep/losses.py
628 629 630 631 632 633 634 635 636 637 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import FocalR_MSELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = FocalR_MSELoss()(input, target)
Source code in pytorch_widedeep/losses.py
639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 |
|
FocalR_RMSELoss ¶
FocalR_RMSELoss(
beta=0.2, gamma=1.0, activation_fn="sigmoid"
)
Bases: nn.Module
Focal-R RMSE loss
Based on Delving into Deep Imbalanced Regression.
Parameters:
-
beta
(
float
) –Focal Loss
beta
parameter in their implementation -
gamma
(
float
) –Focal Loss
gamma
parameter -
activation_fn
(
Literal[sigmoid, tanh]
) –Activation function to be used during the computation of the loss. Possible values are 'sigmoid' and 'tanh'. See the original publication for details.
Source code in pytorch_widedeep/losses.py
699 700 701 702 703 704 705 706 707 708 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import FocalR_RMSELoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = FocalR_RMSELoss()(input, target)
Source code in pytorch_widedeep/losses.py
710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 |
|
HuberLoss ¶
HuberLoss(beta=0.2)
Bases: nn.Module
Hubbler Loss
Based on Delving into Deep Imbalanced Regression.
Source code in pytorch_widedeep/losses.py
759 760 761 |
|
forward ¶
forward(input, target, lds_weight=None)
Parameters:
-
input
(
Tensor
) –Input tensor with predictions (not probabilities)
-
target
(
Tensor
) –Target tensor with the actual classes
-
lds_weight
(
Optional[Tensor]
) –If we choose to use LDS this is the tensor of weights that will multiply the loss value.
Examples:
>>> import torch
>>>
>>> from pytorch_widedeep.losses import HuberLoss
>>>
>>> target = torch.tensor([1, 1.2, 0, 2]).view(-1, 1)
>>> input = torch.tensor([0.6, 0.7, 0.3, 0.8]).view(-1, 1)
>>> loss = HuberLoss()(input, target)
Source code in pytorch_widedeep/losses.py
763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 |
|
InfoNCELoss ¶
InfoNCELoss(temperature=0.1, reduction='mean')
Bases: nn.Module
InfoNCE Loss. Loss applied during the Contrastive Denoising Self Supervised Pre-training routine available in this library
NOTE: This loss is in principle not exposed to the user, as it is used internally in the library, but it is included here for completion.
See SAINT: Improved Neural Networks for Tabular Data via Row Attention and Contrastive Pre-Training and references therein
Partially inspired by the code in this repo
Parameters:¶
temperature: float, default = 0.1 The logits are divided by the temperature before computing the loss value reduction: str, default = "mean" Loss reduction method
Source code in pytorch_widedeep/losses.py
822 823 824 825 826 |
|
forward ¶
forward(g_projs)
Parameters:
-
g_projs
(
Tuple[Tensor, Tensor]
) –Tuple with the two tensors corresponding to the output of the two projection heads, as described 'SAINT: Improved Neural Networks for Tabular Data via Row Attention and Contrastive Pre-Training'.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import InfoNCELoss
>>> g_projs = (torch.rand(5, 5), torch.rand(5, 5))
>>> loss = InfoNCELoss()
>>> res = loss(g_projs)
Source code in pytorch_widedeep/losses.py
828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 |
|
DenoisingLoss ¶
DenoisingLoss(
lambda_cat=1.0, lambda_cont=1.0, reduction="mean"
)
Bases: nn.Module
Denoising Loss. Loss applied during the Contrastive Denoising Self Supervised Pre-training routine available in this library
NOTE: This loss is in principle not exposed to the user, as it is used internally in the library, but it is included here for completion.
See SAINT: Improved Neural Networks for Tabular Data via Row Attention and Contrastive Pre-Training and references therein
Parameters:¶
lambda_cat: float, default = 1. Multiplicative factor that will be applied to loss associated to the categorical features lambda_cont: float, default = 1. Multiplicative factor that will be applied to loss associated to the continuous features reduction: str, default = "mean" Loss reduction method
Source code in pytorch_widedeep/losses.py
886 887 888 889 890 891 892 893 |
|
forward ¶
forward(x_cat_and_cat_, x_cont_and_cont_)
Parameters:
-
x_cat_and_cat_
(
Optional[Union[List[Tuple[Tensor, Tensor]], Tuple[Tensor, Tensor]]]
) –Tuple of tensors containing the raw input features and their encodings, referred in the SAINT paper as \(x\) and \(x''\) respectively. If one denoising MLP is used per categorical feature
x_cat_and_cat_
will be a list of tuples, one per categorical feature -
x_cont_and_cont_
(
Optional[Union[List[Tuple[Tensor, Tensor]], Tuple[Tensor, Tensor]]]
) –same as
x_cat_and_cat_
but for continuous columns
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import DenoisingLoss
>>> x_cat_and_cat_ = (torch.empty(3).random_(3).long(), torch.randn(3, 3))
>>> x_cont_and_cont_ = (torch.randn(3, 1), torch.randn(3, 1))
>>> loss = DenoisingLoss()
>>> res = loss(x_cat_and_cat_, x_cont_and_cont_)
Source code in pytorch_widedeep/losses.py
895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 |
|
EncoderDecoderLoss ¶
EncoderDecoderLoss(eps=1e-09)
Bases: nn.Module
'Standard' Encoder Decoder Loss. Loss applied during the Endoder-Decoder Self-Supervised Pre-Training routine available in this library
NOTE: This loss is in principle not exposed to the user, as it is used internally in the library, but it is included here for completion.
The implementation of this lost is based on that at the tabnet repo, which is in itself an adaptation of that in the original paper TabNet: Attentive Interpretable Tabular Learning.
Parameters:¶
eps: float Simply a small number to avoid dividing by zero
Source code in pytorch_widedeep/losses.py
993 994 995 |
|
forward ¶
forward(x_true, x_pred, mask)
Parameters:
-
x_true
(
Tensor
) –Embeddings of the input data
-
x_pred
(
Tensor
) –Reconstructed embeddings
-
mask
(
Tensor
) –Mask with 1s indicated that the reconstruction, and therefore the loss, is based on those features.
Examples:
>>> import torch
>>> from pytorch_widedeep.losses import EncoderDecoderLoss
>>> x_true = torch.rand(3, 3)
>>> x_pred = torch.rand(3, 3)
>>> mask = torch.empty(3, 3).random_(2)
>>> loss = EncoderDecoderLoss()
>>> res = loss(x_true, x_pred, mask)
Source code in pytorch_widedeep/losses.py
997<PHONE_NUMBER> 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 |
|


@@include('components/page-blocks/_head-foundation.html',{ "lang":"en", "title":"SIGMA-SQUAD", "description":"SIGMA-SQUAD html/css template for new user", "keywords":"", "favicon":"img/favicons/favicon", })
@@include('components/page-blocks/found-hero/_hero.html') @@include('components/page-blocks/found-whychooseus/_why.html') @@include('components/page-blocks/found-portfolio/_portfolio.html') @@include('components/page-blocks/found-contact/_contact.html') @@include('components/page-blocks/found-footer/_footer.html') @@include('components/page-blocks/_scripts.html')


Creating polygons. (pp. 144ff.)
Basic polygon using Polygon class
Draggable polygon (pp. 153ff.)
Concave generic polygon
Ellipse


Slides available at: ns2.sundarraman.me
$ sudo apt-get install ns2
$ sudo apt-get purge nam
$ wget --user-agent="Mozilla/5.0 (Windows NT 5.2; rv:2.0.1) Gecko/20100101 Firefox/4.0.1" "http://technobytz.com/wpcontent/uploads/2015/11/nam_1.14_amd64.zip"
$ unzip nam_1.14_amd64.zip
$ sudo dpkg -i nam_1.14_amd64.deb
$ sudo apt-mark hold nam
$ sudo apt-get install openjdk-8-jre
$ java -jar NSG.jar
Tcl is a general purpose multi-paradigm system programming language. It is a scripting language that aims at providing the ability for applications to communicate with each other.
% puts "Hello, World!" ;#I'm a comment
Hello World
% puts [expr 3 + 2] ;# print sum of the 3 and 2
5
% puts "Hello\nWorld"
Hello
World
% set myVariable 18
18
% puts $myVariable
18
% set myVariable 18
% puts [expr $myVariable + 6 + 9]
33
% set myVariable 18
18
% set sum [ $myVariable + 1 ];
19
% puts $sum
19
% set myVariable hello
% puts $myVariable
hello
% set myVariable "hello world"
% puts $myVariable
hello world
% set myVariable {hello world}
% puts $myVariable
hello world
% set myVariable {red green blue}
% puts [lindex $myVariable 2]
blue
% puts [array size $myVariable]
3
% set marks(english) 80
% set marks(mathematics) 90
% puts $marks(mathematics)
90
% puts $marks(english)
80
#!/usr/bin/tclsh
set a 100
#check the boolean condition
if { $a == 10 } {
# if condition is true then print the following
puts "Value of a is 10"
} elseif { $a == 20 } {
# if else if condition is true
puts "Value of a is 20"
} elseif { $a == 30 } {
# if else if condition is true
puts "Value of a is 30"
} else {
# if none of the conditions is true
puts "None of the values is matching"
}
puts "Exact value of a is: $a"
None of the values is matching Exact value of a is: 100
% Exp1 ? Exp2 : Exp3; #Figure it out
#while loop execution
set a 10
while { $a < 20 } {
puts "value of a: $a"
incr a
}
# for loop execution
for { set a 10}
{$a < 20} {incr a} {
puts "value of a: $a"
}
set personA(Name) "Dave"
set personA(Age) 14
foreach index [array names personA] {
puts "personA($index): $personA($index)"
}
dict set colours
colour1 red
puts $colours
dict set colours
colour2 green
puts $colours
set colours [dict create colour1 "black" colour2 "white"]
puts $colours
proc add {a {b 100} } {
return [expr $a+$b]
}
puts [add 10 30]
puts [add 10]
40 110
open fileName accessMode
close fileName
| Mode | Description |
|---|---|
| r | Opens an existing text file for reading purpose and the file must exist. This is the default mode used when no accessMode is specified. |
| w | Opens a text file for writing, if it does not exist, then a new file is created else existing file is truncated. |
| a | Opens a text file for writing in appending mode and file must exist. Here, your program will start appending content in the existing file content. |
| r+ | Opens a text file for reading and writing both. File must exist already. |
| w+ | Opens a text file for reading and writing both. It first truncate the file to zero length if it exists otherwise create the file if it does not exist. |
| a+ | Opens a text file for reading and writing both. It creates the file if it does not exist. The reading will start from the beginning, but writing can only be appended. |
set fp [open "input.txt" w+]
puts $fp "test"
close $fp
set fp [open "input.txt" r]
set file_data [read $fp]
puts $file_data
close $fp
test
#Create a simulator object
set ns [new Simulator]
#Define different colors for data flows (for NAM)
$ns color 1 Blue
$ns color 2 Red
#Open the NAM trace file
set nf [open out.nam w]
$ns namtrace-all $nf
#Define a 'finish' procedure
proc finish {} {
global ns nf
$ns flush-trace
#Close the NAM trace file
close $nf
#Execute NAM on the trace file
exec nam out.nam &
exit 0
}
#Create four nodes
set n0 [$ns node]
set n1 [$ns node]
set n2 [$ns node]
set n3 [$ns node]
#Create links between the nodes
$ns duplex-link $n0 $n2 2Mb 10ms DropTail
$ns duplex-link $n1 $n2 2Mb 10ms DropTail
$ns duplex-link $n2 $n3 1.7Mb 20ms DropTail
#Set Queue Size of link (n2-n3) to 10
$ns queue-limit $n2 $n3 10
#Give node position (for NAM)
$ns duplex-link-op $n0 $n2 orient right-down
$ns duplex-link-op $n1 $n2 orient right-up
$ns duplex-link-op $n2 $n3 orient right
#Monitor the queue for link (n2-n3). (for NAM)
$ns duplex-link-op $n2 $n3 queuePos 0.5
#Setup a TCP connection
set tcp [new Agent/TCP]
$tcp set class_ 2
$ns attach-agent $n0 $tcp
set sink [new Agent/TCPSink]
$ns attach-agent $n3 $sink
$ns connect $tcp $sink
$tcp set fid_ 1
#Setup a FTP over TCP connection
set ftp [new Application/FTP]
$ftp attach-agent $tcp
$ftp set type_ FTP
#Setup a UDP connection
set udp [new Agent/UDP]
$ns attach-agent $n1 $udp
set null [new Agent/Null]
$ns attach-agent $n3 $null
$ns connect $udp $null
$udp set fid_ 2
#Setup a CBR over UDP connection
set cbr [new Application/Traffic/CBR]
$cbr attach-agent $udp
$cbr set type_ CBR
$cbr set packet_size_ 1000
$cbr set rate_ 1mb
$cbr set random_ false
#Schedule events for the CBR and FTP agents
$ns at 0.1 "$cbr start"
$ns at 1.0 "$ftp start"
$ns at 4.0 "$ftp stop"
$ns at 4.5 "$cbr stop"
#Detach tcp and sink agents (not really necessary)
$ns at 4.5 "$ns detach-agent $n0 $tcp ; $ns detach-agent $n3 $sink"
#Call the finish procedure after 5 seconds of simulation time
$ns at 5.0 "finish"
#Print CBR packet size and interval
puts "CBR packet size = [$cbr set packet_size_]"
puts "CBR interval = [$cbr set interval_]"
#Run the simulation
$ns run
set ns [new Simulator]
$ns use-scheduler Heap
$ns at 300.5 "complete_sim"
. . .
proc complete_sim {} {
. . .
}
Presentation by Sundar Raman G
Under CSI -BMSIT&M Student Chapter


Our goal is to help Open Enterprises, Cooperatives and Communities to distribute value between their members. Bitmind.co will integrate knowledge production tools and team contributions tracking. Mapping workflows, ideas, donations and incomes in a common graph of value.
Vasilis Kostakis is Political Economist and founder of the P2P Lab. Currently he is senior research fellow at the Ragnar Nurkse School of Innovation and Governance at Tallinn University of Technology, Estonia, and collaborator of the P2P Foundation.
Diego González is Software Engineer, Master in Artificial Intelligence and Graduate in International Cooperation for Development. His current research as PhD Cadidate is focused on Complex Adaptive Systems, collective intelligence and P2P Social Dynamics.
Ishan Shapiro is founder at MetaMaps and Notthisbody. His expertise lies in the sweet spot between human intuition & machine processes. He is a technographer, transmedia producer, filmmaker and strategist.


{{ $featured_image := .Params.featured_image }}
Posted on {{ .Date.Format "January 2, 2006" }}
{{ .Summary}}


- What is (Static|Dynamic|Gradual) typing?
- Gradual Typing in Python
- Function annotations
- Type hints
- Type hinting syntax proposal
☺
☹
☺
☹
☹
def yolo(): return None + 42 yolo() # TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
Any
type is involved (more on that later)
t1
is consistent with a type t2
x
and y
, and given the type of x
is consistent with the type of y
x
to y
in a type-safe manner
t1
is consistent with a type t2
if t1
is a
subclass of t2
. This relation is not symmetric.
Any
type is consistent with every type, but it is not
a subclass of every type.
Any
, which makes every type
consistent with Any
.
Any
is at the root of the type graph, like object
object
is not consistent with most types
Any
and object
mean "any type allowed" when annotating a function argument
Any
can be passed no matter what type is expected
Any
type never makes a type checker complain
Any
type
def say_hello(name : str = "Anon") -> None: # <- return value annotation # ^^^^^ ^ # | `- default value # `- parameter annotation print("Hello, {}".format(name))
def say_hello_to_everybody(*names : "An arbitrary number of names"): list(map(say_hello, names))
def
is preferred over lambda
def greet(name : str) -> str: return "Hello, {}".format(name)
☺
greet("Ada") # "Hello, Ada"
☹
greet(0xADA)
int # unbounded integer complex # complex number float # floating point number bool # boolean value str # unicode string bytes # 8-bit string
l = []
l
will be a list but the type of its elements is unknown
l = [] # type: List[int]
typing
module contains generic versions of concrete collection
types
from typing import List, Dict, Set, Tuple List[str] # list of str objects Dict[str, int] # dictionary from str to int Set[str] # set of str objects Tuple[int, int, int] # a 3-tuple of ints Tuple[int, ...] # a variable length tuple of ints
from typing import List l = [] # type: List[int]
☺
l = [1, 2, 3]
☹
l = [1, 2, "three"]
from typing import Dict d = {} # type: Dict[str, str]
☺
d = { "name": "Ada" }
☹
d = { "name": 0xADA }
from typing import Set s = set() # type: Set[int]
☺
s = {1, 2, 3}
☹
s = {"foo", "bar", "baz"}
from typing import Tuple t = () # type: Tuple[str, int]
☺
t = ("baz", 42)
☹
t = (42, "foo") # or t = ("baz", 42, "foo")
collections.abc
for duck typing
from typing import Mapping, MutableMapping, Sequence, MutableSequence Mapping[str, str] # a mapping from strings to strings MutableMapping[str, str] # a mutable mapping from strings to strings Sequence[int] # a sequence of integers MutableSequence[int] # a mutable sequence of integers
class Foo: def bar(self) -> str: return "baz" fooer = Foo()
☹
fooer.baz() # ^ # `- typos in method and property names result in type errors
Union
is
a type constructor
from typing import Union def mul(n : int, m : Union[str, int]): return n * m mul(42, 1) # 1 mul(42, '*') # "******************************************"
None
as an argument is a special case and is replaced by type(None)
Union[Union[int, str], float] == Union[int, str, float]
Union[str] == str
Union[str, str, int] == Union[str, int]
Any
is present, the union becomes an Any
TypeVar
for creating named generic types
from typing import TypeVar, Sequence, Iterator T = TypeVar('T') def dupe(xs : Sequence[T]) -> Iterator[T]: for x in xs: yield x yield x
from typing import Optional, TypeVar, Sequence T = TypeVar('T') def first(s : Sequence[T]) -> Optional[T]: # equivalent to Union[T, None] return s[0] if s else None
☹
x = first(["foo", "bar", "baz"]) x.lower() # must check for None before using
Set[int]
and Dict[str, int]
are concretions of
generic classes
A
and B
from typing import TypeVar, Generic A = TypeVar('A') B = TypeVar('B')
class Pair(Generic[A, B]): def __init__(self, x : A, y : B) -> None: self._value = (x, y,) @property def first(self) -> A: return self._value[0] @property def second(self) -> B: return self._value[1] def swap(self) -> Pair[B, A]: return Pair[B, A](self.second, self.first)
sp
has the type Pair[int, str]
a_pair = Pair[str, int]("yada", 42) another_pair = p.swap()
☹
a_string = "" # implies that x will be of type string a_string = another_pair.first
Callable
type includes the type of its arguments
and return value
Callable[[int, int], int]
Callable[..., int]
from typing import Callable, Iterable, TypeVar A = TypeVar('A') B = TypeVar('B', Iterable[A]) def typed_filter(f : Callable[[A], bool], xs : B) -> B: return filter(f, xs) def is_positive(x : int) -> bool: return x > 0
typed_filter(is_positive, {-3, -2, -1, 0, 1, 2, 3}) # {1, 2, 3}
☹
from operator import add typed_filter(add, {1, 2, 3})
Thank you ˊ~ω~ˋ


Guidance
How we calculate and allocate revenue funding for studio schools in the 2016 to 2017 academic year.
Ref: DFE-00110-2016 PDF , 275KB , 15 pages
This guide explains how much funding studio schools will receive.
It includes details of the following types of funding available to studio schools:


Toggle navigation
{{ name }}
Link
(current)
Link
Dropdown
Action
Another action
Something else here
Separated link
One more separated link
Link
Dropdown
Action
Another action
Something else here
Separated link


| 039:046 Khan | : |
Say (O Muhammad SAW): "O Allah! Creator of the heavens and the earth! All-Knower of the Ghaib (unseen) and the seen. You will judge between your slaves about that wherein they used to differ." |
| 039:046 Maulana | : |
Say: O Allah, Originator of the heavens and the earth, Knower of the unseen and the seen, Thou judgest between Thy servants as to that wherein they differ. |
| 039:046 Pickthal | : |
Say: O Allah! Creator of the heavens and the earth! Knower of the Invisible and the Visible! Thou wilt judge between Thy slaves concerning that wherein they used to differ. |
| 039:046 Rashad | : |
Proclaim: "Our god, Initiator of the heavens and the earth, Knower of all secrets and declarations, You are the only One who judges among Your servants regarding their disputes." |
| 039:046 Sarwar | : |
Say, "Lord, the Creator of the heavens and the earth, knower of the seen and unseen, it is You who will issue Your decree about the differences of Your servants." |
| 039:046 Shakir | : |
Say: O Allah! Originator of the heavens and the earth, Knower of the unseen and the seen! Thou (only) judgest between Thy servants as to that wherein they differ. |
| 039:046 Sherali | : |
Say, 'O ALLAH ! Originator of the heavens and the earth; Knower of the unseen and the seen; Thou alone wilt judge between Thy servants concerning that in which they differed.' |
| 039:046 Yusufali | : |
Say: "O Allah! Creator of the heavens and the earth! Knower of all that is hidden and open! it is Thou that wilt judge between Thy Servants in those matters about which they have differed." |
Concepts/Themes Covered: أركان الإسلام > التوحيد > توحيد الله تعالي > إنفراده تعالى بالأمروالحكم Pillars of Islam> Islamic> Oneness of Allah>His Individualism of Order and Rule أركان الإسلام > التوحيد > توحيد الله تعالي > أوامره Pillars of Islam> Islamic> Oneness of Allah> His Order أركان الإسلام > التوحيد > توحيد الله تعالي > صفات الله تعالى > عالم الغيب والشهادة Pillars of Islam> Islamic> Oneness of Allah> His Glory's Characteristics> The Knower of the Unseen as well as that which is Open أركان الإسلام > التوحيد > توحيد الله تعالي > صفات الله تعالى > فاطر السماوات والأرض Pillars of Islam> Islamic> Oneness of Allah> His Glory's Characteristics> The Creator of Heavens and Earth أركان الإسلام > التوحيد > توحيد الله تعالي > وحدانيته Pillars of Islam> Islamic> Oneness of Allah> Singularity and Being Unique الإنسان والعلاقات الاجتماعية > المجتمعات > اختلاف الناس Man and The Social Relations>The Societies>Different Kinds of People العلاقات القضائية > تنظيمات قضائية > الحكم بالعدل Judicial Relationships>Juridical Regulations>To Rule in Just العلاقات القضائية > تنظيمات قضائية > الحكم Judicial Relationships>Juridical Regulations>Judgement
This tool uses eight English parallel translations for the Holy Quran imported from Mr. Clay Smith. You can also visit Qurany Concepts for browsing the Quran themes or topics. If you want to search the Holy Quran for keywords, please visit Qurany Keywords.


It Just a TRAININGG Match.
Now,11:30 pm,i am sitting in the chair,waiting for the Grand Final of KODE5 GLOBAL FINAL.
yesterday,at the same time,The Chinese Team called DRAGON just had been released from Customs of Russia.
what the fuck?! i ask myself and came up with nothing.
an half hour later,they began to warm up,then,The first competitor they gonna to versus was SK-Gaming,one of the most strongest team in the world.
It is obviously that Team Dragon not only had to conquer their physical problems but also spirits and skills.
1st round.they won,with some headshot.but it’s the only round they played quite well.
They they got totally owned!Yeah, that was a OWNAGE!
They tense,so they lose it.There is no doubt about it that No Team could make it with tenseness and physical problems even thought they well in sprite and physical.
It’s just a training match.
yep,just a training match.
just stand up and keep moving.
OKOK, the Grand Final is about to begin.keep turning on!
see ya


PLDT Digital Transformation 2020-06-16T10.46.01
- CRM migrates to SalesForce
- Industry-specific applications migrate to Vlocity
- Operations migrate to Capgemini
Salesforce
Salesforce.com, inc. is an American cloud-based software company headquartered in San Francisco, California. It provides customer relationship management (CRM) service and also sells a complementary suite of enterprise applications focused on customer service, marketing automation, analytics, and application development.
In 2020, Fortune magazine ranked Salesforce at number six on their Fortune List of the Top 100 Companies to Work For in 2020 based on an employee survey of satisfaction.[1]
Vlocity
Built natively on the Salesforce platform, Vlocity is a leading provider of industry-specific cloud and mobile software for the world’s top communications, media and entertainment, energy, utilities, insurance, health, and government organizations.
Capgemini
Capgemini SE is a French multinational corporation that provides consulting, technology, professional, and outsourcing services. It is headquartered in Paris, France. Capgemini has over 270,000 employees in over 50 countries, of whom nearly 120,000 are in India.
There's an article about this in the Philippine Star, Business Section, June 16, 2020
Toastmasters TME script
DT/ DX
Developed countries have 10-20% of their potential, pre-COVID.
- DT of Information
- DT of Industries/ Organizations
- DT of Societies
- DT of Education / Training
Introduction
A terrific Tuesday evening to our Club President, fellow toastmasters and friends. Welcome to tonight's meeting dubbed Digital Transformation 101
My name is Roy Canseco and I am honored to be your Taostmaster of the Evening.
...
I am seeing ____ new faces. Can I have a show of hands from anyone new to toastmasters here? For the benefit of the guests here, I shall explain a bit. Sultan Toastmasters club is a unique, fun and encouraging environment where we learn public speaking and communication through practice. A typical club meeting consists of 3 main parts The first part is where we get comfortable and give short impromptu speeches. The second part is where chosen members deliver speech projects. The third segment is where feedback is given to the speakers, allowing them to reflect and have learning actually happen.
Next I want to introduce some people, who are set to make this meeting more exciting and educational. TM Ceasar Jacinto _will track the time. So if you see him eyeing you weirdly, maybe it's time start building your speech to a close. _TM Alice Kalaw____ will be our Ah-Counter. He/ she will track your err, ahh, umm, ok, alright, actually... " and other word crutches that we commonly fall into during our speech.
TM Michael Jacinto, DTM, TC will be our Grammarian for tonight. He will be our grammar police but this is a good thing.
To set us off into learning frame of mind, let me call _TM Micheal Jacinto_____ to share with us the Word of the Day.
Up next is the prepared speeches segment. As tonight's TME, I want to start and keep a tradition of giving all our prepared speeches speakers a 10-second round of applause after the end of each speech.
We give them extended applause because we understand that it takes time and effort to prepare a speech, and it certainly takes courage to deliver it in front of so many people here tonight.
So please unmute your mics and give your thunderous applause later for each speaker after they have delivered their speeches.
Intro Speech
Most TME uses the “POETTS” structure when introducing the speaker:
P – Project Title of the speech
O – Objectives of the speech
E – Evaluator: who is the evaluator of this speech
T – Time allocated for the speech
T – Title of the speech to be given
S – Speaker’s introduction
Prepare remarks to be used.
Consult the VPE for last-minute changes to the program. Check with the speakers for any last-minute changes.
Our __ speaker this evening is _Linda Navarro, ACB, ALB__ __ _. He/ She will be delivering his/ her speech entitled Crash Landing on H'yu__. He/ She will then be evaluated by _Lolita Bravo, DL2______.
Let me call first the evaluator to briefly tell us the Project Title of the speech, The Objectives by which he/ she will be evaluating, and the time alloted for the speech.
Thank you evaluator TM Lolita Bravo, DL2____________ Let's welcome TM __Linda Navarro, ACB, ALB_________ to deliver to us Crash Landing on H'yu_______.
Our __ speaker this evening is _Teddy Tardecilla, ACB,AD__ __ _. He/ She will be delivering his/ her speech entitled ULYSSES_. He/ She will then be evaluated by Sonia M. Roco, ACG, ALB,VC2____.
Let me call first the evaluator to briefly tell us the Project Title of the speech, The Objectives by which he/ she will be evaluating, and the time alloted for the speech.
Thank you evaluator TM Sonia M. Roco, ACG, ALB,VC2____________ Let's welcome TM __Teddy Tardecilla, ACB,AD________ to deliver to us ULYSSES__.


Features
MedCab is your personal, virtual, alternative medicine cabinet. It is a powerful app that lets you search for strains of medical marijana, finds the right dose, and saves your products. MedCab will help you discover the right strains and doses for your needs and keeps that information at your fingertips. Enter your infomation, get product recommendations, and save your favorites. It's easy!


| 1 | /* =========================================================== | |
| 2 | * JFreeChart : a free chart library for the Java(tm) platform | |
| 3 | * =========================================================== | |
| 4 | * | |
| 5 | * (C) Copyright 2000-2009, by Object Refinery Limited and Contributors. | |
| 6 | * | |
| 7 | * Project Info: http://www.jfree.org/jfreechart/index.html | |
| 8 | * | |
| 9 | * This library is free software; you can redistribute it and/or modify it | |
| 10 | * under the terms of the GNU Lesser General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2.1 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This library is distributed in the hope that it will be useful, but | |
| 15 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
| 16 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public | |
| 17 | * License for more details. | |
| 18 | * | |
| 19 | * You should have received a copy of the GNU Lesser General Public | |
| 20 | * License along with this library; if not, write to the Free Software | |
| 21 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, | |
| 22 | * USA. | |
| 23 | * | |
| 24 | * [Java is a trademark or registered trademark of Sun Microsystems, Inc. | |
| 25 | * in the United States and other countries.] | |
| 26 | * | |
| 27 | * --------------------------------------- | |
| 28 | * OverLibToolTipTagFragmentGenerator.java | |
| 29 | * --------------------------------------- | |
| 30 | * (C) Copyright 2003-2009, by Richard Atkinson and Contributors. | |
| 31 | * | |
| 32 | * Original Author: Richard Atkinson; | |
| 33 | * Contributors: David Gilbert (for Object Refinery Limited); | |
| 34 | * Fawad Halim - bug 2690293; | |
| 35 | * | |
| 36 | * Changes | |
| 37 | * ------- | |
| 38 | * 12-Aug-2003 : Version 1 (RA); | |
| 39 | * 04-Dec-2007 : Escape tool tip text to fix bug 1400917 (DG); | |
| 40 | * 19-Mar-2009 : Escape apostrophes - see bug 2690293 with fix by FH (DG); | |
| 41 | * | |
| 42 | */ | |
| 43 | ||
| 44 | package org.jfree.chart.imagemap; | |
| 45 | ||
| 46 | /** | |
| 47 | * Generates tooltips using the OverLIB library | |
| 48 | * (http://www.bosrup.com/web/overlib/). | |
| 49 | */ | |
| 50 | public class OverLIBToolTipTagFragmentGenerator | |
| 51 | implements ToolTipTagFragmentGenerator { | |
| 52 | ||
| 53 | /** | |
| 54 | * Creates a new instance. | |
| 55 | */ | |
| 56 | public OverLIBToolTipTagFragmentGenerator() { | |
| 57 | super(); | |
| 58 | } | |
| 59 | ||
| 60 | /** | |
| 61 | * Generates a tooltip string to go in an HTML image map. | |
| 62 | * | |
| 63 | * @param toolTipText the tooltip text. | |
| 64 | * | |
| 65 | * @return The formatted HTML area tag attribute(s). | |
| 66 | */ | |
| 67 | public String generateToolTipFragment(String toolTipText) { | |
| 68 |
1
1. generateToolTipFragment : mutated return of Object value for org/jfree/chart/imagemap/OverLIBToolTipTagFragmentGenerator::generateToolTipFragment to ( if (x != null) null else throw new RuntimeException ) → KILLED |
return " onMouseOver=\"return overlib('" |
| 69 | + ImageMapUtilities.javascriptEscape(toolTipText) | |
| 70 | + "');\" onMouseOut=\"return nd();\""; | |
| 71 | } | |
| 72 | ||
| 73 | } | |
Mutations | ||
| 68 |
1.1 |


Dark City Review By: Ryan Davis 2/27/98
There isn't much good about this movie. Not much I can say about the acting, directing, or writing that would make you consider seeing this movie. So I'll get my one good comment out of the way, at least Joel Schuemacher (Batman & Robin) didn't direct it or it would be titled "Technicolor City". In fact there is nothing colorful about this movie, its dark and depressingly gloomy right down to the bitter end.
The plot has a tendency to be interesting, but all that passes while your laughing at the ridiculous things thrown into what could have been a fascinating movie. The plot is impossible to explain due to how senseless it gets, so I will just touch on the bare minimum. John Murdoch(Rufus Sewell) awakes in the bathtub of a cheap hotel, only to find out he has forgotten everything. John must find out who he is before the "strangers"(a.k.a. mind erasing aliens) find him and use him for their own evil conspiracy. During the film some interesting points are raised about human individuality, and the existence of inherently evil people. Any of these points however are completely "erased" from your mind as you watch the actors stumble through the dreadful script.
As I mentioned earlier, nothing but the atmosphere is right in this film. The acting is bland, and since there is virtually no character development no one seems to care. The special effects are low budget and some even hilariously fake, a sign of a true "B-movie". The direction is poor and there is little continuity, not that you would expect it in a movie switching realities constantly. Lastly the script is weak and has no concept of reality, and doesn't deserve to have the word "science" in science-fiction. If I haven't got my point across, I'll say it more plainly: This is a bad movie. Lets hope the next movie by Alex "I wish I was Tim Burton" Proyas is at least tolerable.
Grade: D-
-----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


|
QuantLib: a free/open-source library for quantitative finance
Fully annotated sources - version 1.30
|
Files | |
| file | concentrating1dmesher.cpp [code] |
| One-dimensional grid mesher concentrating around critical points. | |
| file | concentrating1dmesher.hpp [code] |
| One-dimensional grid mesher concentrating around critical points. | |
| file | exponentialjump1dmesher.cpp [code] |
| mesher for a exponential jump mesher with high mean reversion rate and low jump intensity | |
| file | exponentialjump1dmesher.hpp [code] |
| mesher for a exponential jump mesher with high mean reversion rate and low jump intensity | |
| file | fdm1dmesher.hpp [code] |
| One-dimensional simple FDM mesher object working on an index. | |
| file | fdmblackscholesmesher.cpp [code] |
| 1-d mesher for the Black-Scholes process (in ln(S)) | |
| file | fdmblackscholesmesher.hpp [code] |
| 1-d mesher for the Black-Scholes process (in ln(S)) | |
| file | fdmblackscholesmultistrikemesher.cpp [code] |
| 1-d mesher for the Black-Scholes process (in ln(S)) | |
| file | fdmblackscholesmultistrikemesher.hpp [code] |
| 1-d mesher for the Black-Scholes process (in ln(S)) | |
| file | fdmcev1dmesher.cpp [code] |
| file | fdmcev1dmesher.hpp [code] |
| One-dimensional mesher for the CEV model. | |
| file | fdmhestonvariancemesher.cpp [code] |
| file | fdmhestonvariancemesher.hpp [code] |
| One-dimensional grid mesher for the variance part of the Heston model. | |
| file | fdmmesher.hpp [code] |
| mesher for a fdm grid | |
| file | fdmmeshercomposite.cpp [code] |
| file | fdmmeshercomposite.hpp [code] |
| FdmMesher which is a composite of Fdm1dMesher. | |
| file | fdmsimpleprocess1dmesher.cpp [code] |
| file | fdmsimpleprocess1dmesher.hpp [code] |
| One-dimensional grid mesher. | |
| file | predefined1dmesher.hpp [code] |
| One-dimensional mesher build from a given set of points. | |
| file | uniform1dmesher.hpp [code] |
| One-dimensional simple uniform grid mesher. | |
| file | uniformgridmesher.cpp [code] |
| file | uniformgridmesher.hpp [code] |
| uniform grid mesher | |


§ myQuery3Panel()
| myQuery3Panel.myQuery3Panel |
( |
| ) |
|
§ buttonWorking()
| void myQuery3Panel.buttonWorking |
( |
| ) |
|
§ getPanel()
| JPanel myQuery3Panel.getPanel |
( |
| ) |
|
§ prepareGui()
| void myQuery3Panel.prepareGui |
( |
| ) |
|
§ nameField
| JTextField myQuery3Panel.nameField = new JTextField() |
|
private |
§ nameText
| JLabel myQuery3Panel.nameText = new JLabel("Name") |
|
private |
§ panel4
| JPanel myQuery3Panel.panel4 = new JPanel(new GridBagLayout()) |
|
private |
§ panel4gbc
| GridBagConstraints myQuery3Panel.panel4gbc = new GridBagConstraints() |
|
private |
§ resetButton
| JButton myQuery3Panel.resetButton |
|
private |
§ ThrasholdField
| JTextField myQuery3Panel.ThrasholdField = new JTextField() |
|
private |
§ thresholdText
| JLabel myQuery3Panel.thresholdText = new JLabel("Till Year") |
|
private |
The documentation for this class was generated from the following file:


Before configuring this mapping you must set a target entity. You can create new entities in the Entities view.
Before configuring this mapping you must ingest source documents.
{{ targetEntity?.info.title }}
{{ targetEntity?.info.title }} has no properties to map. Add them in the Entities view.
{{prop.name}}
{{prop.datatype}}


If an assessment you created does not appear in your gradebook,
check the Grading setting for that assessment. An assessment will
appear in your gradebook only if you select Grades sent to
Gradebook
.
Note: Selecting Grades sent to Gradebook
will send scores to Gradebook immediately, regardless of feedback
date.
To check the Grading setting for your assessment:
Tests & Quizzes
.
--Select Action--
drop-down box,
select Settings
.
Grades
sent to Gradebook
.


Multi-chart test cases - feel free to add more tests
2 non-stackable series, 1 line, no colors set, 1 y-axis, no labels.
2 stackable series, 1 line, colors set, 2 y-axis, labels.
3 stackables (right axis), 1 line per axis, colors set, 2 y-axis, show 0 on y-axes


votigoto
Get Version
0.2.0Ruby can has TiVo®?
What?
Simple Ruby abstraction of the TiVoToGo™ protocol. Only works on Series2 TiVos.
Why?
Because my office is upstairs, my TiVo is downstairs, and the built in web interface is UGLY.
Installing
sudo gem install votigoto
Demonstration of usage
>> require 'votigoto' => true >> tivo = Votigoto::Base.new("<IP_ADDRESS>","SEKRET_MEDIA_ACCESS_KEY") => #<Votigoto::Base:0x14095d8 @mak="SEKRET_MEDIA_ACCESS_KEY", @ip="<IP_ADDRESS>"> >> tivo.shows.first.to_s => "The Daily Show With Jon Stewart - Senator Joe Biden (D-Del.)."
Grrr
If you’re on OS X, and have growlnotify installed, this gem includes a daemon that will notify you via Growl of new shows on your TiVo:
$ tivo_growl Please edit ~/.tivo to include your TiVo's IP and Media Access Key Textmate users: mate ~/.tivo $ mate .tivo $ tivo_growl $
Hacking
The SVN repo is svn://rubyforge.org/var/svn/votigoto/trunk
. To chip in, pastie your patches and email a link to Jesse Newland.
License
This code is free to use under the terms of the MIT license.
Disclaimer
This project is in no way associated with TiVo or TiVo, Inc. TiVo and the TiVo logo are registered trademarks of TiVo Inc. or its subsidiaries.
Contact
Comments are welcome. Send an email to Jesse Newland.
Jesse Newland, 9th August 2007
Theme extended from Paul Battley


WWW Access Statistics for 1998
December 1998
November 1998
October 1998
September 1998
August 1998
July 1998
June 1998
May 1998
April 1998
March 1998
February 1998
January 1998
Close navigation window


Resources
# Resources
Learning DialogFlow is very much a team sport. Below's a highlight reel of excellent DialogFlow resources, both official & unofficial:
- [Libraries](#Libraries)
- [Official Samples](#Official-Samples)
- [Great 3rd Party Resources](#Great-3rd-Party-Resources)
## Libraries
**[NodeJS Client for DialogFlow](https://www.npmjs.com/package/dialogflow)** Use this library if you want to control each "turn" of the conversation (ie you're responsible for POST'ing user text to DialogFlow's API, get the response, render it, etc etc)
* Source: https://github.com/googleapis/nodejs-dialogflow
* Documentation: https://googleapis.dev/nodejs/dialogflow/latest/index.html
**[DialogFlow-fulfillment](https://www.npmjs.com/package/dialogflow-fulfillment)** This is a library for **["fulfillment"](https://cloud.google.com/dialogflow/docs/fulfillment-overview)**(where DialogFlow calls into your system's webhook to retrieve data or perform some work.) This is also what DialogFlow's **[inline editor](https://cloud.google.com/dialogflow/docs/fulfillment-inline-editor)** uses for fulfillment code. Note that **[as of January 2020](https://github.com/dialogflow/dialogflow-fulfillment-nodejs/commit/86a844a34ce61a665fa3687afe91af68b3dca0b8)** it is no longer maintained.
* Source: https://github.com/dialogflow/dialogflow-fulfillment-nodejs
* Documentation: https://blog.dialogflow.com/post/fulfillment-library-beta/
**[actions-on-google](https://www.npmjs.com/package/actions-on-google)** Use this ONLY if you're planning on building an agent that works with Google Assistant. actions-on-google has a slighlty different syntax than dialogflow-fulfillment and its rich components (cards, suggeestion chips, carousel, etc) will not render on any non-Google Assistant device/interface.
* Source: https://github.com/actions-on-google/actions-on-google-nodejs/tree/master/src/service/dialogflow
* Documentation: https://actions-on-google.github.io/actions-on-google-nodejs/2.12.0/index.html
* Documentation 2: https://developers.google.com/assistant/actions/reference/nodejsv2/overview
* Example (actions-on-google + dialogflow-fulfillment): https://github.com/dialogflow/fulfillment-actions-library-nodejs/blob/master/functions/index.js
* Rich media JSON payloads (actions-on-google only): https://github.com/dialogflow/fulfillment-webhook-json
## Official Samples
- https://github.com/dialogflow/resources
- https://cloud.google.com/dialogflow/docs/quick/build-agent
- https://github.com/dialogflow/fulfillment-webhook-nodejs/blob/master/functions/index.js
- https://github.com/dialogflow/fulfillment-slot-filling-nodejs/blob/master/functions/index.js
- https://github.com/GoogleCloudPlatform/dialogflow-integrations
- https://cloud.google.com/dialogflow/docs/reference/rest/v2beta1-overview
## Great 3rd Party Resources
**[Deborah Kay's](https://chatbotslife.com/@debbiediscovers)** "knock-knock" joke series (clever use of intents)
- https://chatbotslife.com/how-to-handle-context-with-dialogflow-part-1-knock-knock-jokes-4659b346d83b
- https://chatbotslife.com/how-to-use-context-with-dialogflow-to-handle-errors-part-2-knock-knock-its-me-510c82840e6d
- https://chatbotslife.com/how-to-use-context-with-dialogflow-when-users-spoil-your-punchline-part-3-knock-knock-jokes-f4585179e47e
- https://chatbotslife.com/using-context-and-entities-in-dialogflow-to-respond-to-users-jokes-part-4-knock-knock-jokes-97b2727cfbad
**[Javier Martinez](http://jamarmu.es/)** 101 series on DialogFlow
- http://jamarmu.es/dialogflow-1-intro-to-the-platform/
- http://jamarmu.es/dialogflow-2-intents-and-conversation-flows/
- http://jamarmu.es/dialogflow-3-calling-a-fulfillment-to-process-information/
- http://jamarmu.es/dialogflow-4-using-entities-parameters-and-contexts/
- http://jamarmu.es/dialogflow-5-connecting-to-a-datastore-database/
- http://jamarmu.es/dialogflow-6-using-events-to-trigger-intents/
**[Aravind Mohanoor](https://miningbusinessdata.com/)** has been writing about DialogFlow since its API.AI days
- https://miningbusinessdata.com/recommended-tools-and-services-for-dialogflow-bot-makers/
- https://miningbusinessdata.com/the-must-know-dialogflow-concepts/
- https://miningbusinessdata.com/reader-question-slot-filling-vs-follow-up-intents/
- https://miningbusinessdata.com/build-better-dialogflow-bots/
- https://miningbusinessdata.com/reader-question-will-followup-events-work-when-an-intent-has-an-input-context/
**[Kevin Dhir's](https://medium.com/@kevinkdhir)** DialogFlow basics talk + demo
- https://www.youtube.com/watch?v=DkZmVLHoCLo
## Displaying on web
* https://cloud.google.com/dialogflow/docs/integrations/web-demo
* https://github.com/mishushakov/dialogflow-web-v2


Organizations that have Skype for Business Server (or Lync Server) on-premises and who are planning to use either Teams or Skype for Business Online must configure Azure AD Connect to synchronize their on-premises directory with Microsoft 365. In particular, organizations with Skype for Business on-premises must ensure that the proper msRTCSIP attributes are synchronized into Azure AD.
Note
Existing Teams users who also have Skype for Business on-premises will need to have their Skype for Business on-premises account moved to the cloud in order to get full functionality-- such as the ability to interoperate with Skype for Business users, and to communicate with users in federated organizations. Even if the user will only be using Teams, this online Skype for Business account is required by the infrastructure to deliver the additional functionality. For this migration to take place, you must ensure that Azure AD Connect is properly configured so that you can enable hybrid.
Azure AD Connect keeps your on-premises Active Directory continuously synchronized with Microsoft 365. Your on-premises directory remains the authoritative source of identity, and changes from your on-premises environment are synchronized into Azure AD. Even if you are not moving all users from on-premises to the cloud, all users that use Teams, Skype for Business on-premises, or Skype for Business Online must be synchronized from on-premises into Azure AD to ensure communication between on-premises and online users. Users in your organization will be represented in both your on-premises and online directories.
Whether you have one on-premises Active Directory forest or multiple forests, Azure AD Connect can be used in a variety of supported topologies. From the perspective of Skype for Business Server, there are three main variations:
If user accounts and Skype for Business are all hosted in a single forest, you must ensure that Azure AD Connect is configured to synchronize users from this forest into Azure AD. Although the Azure AD Connect installation wizard has a variety of options, the appropriate attributes will automatically be synchronized into Azure Active Directory.
This scenario is often referred to as a resource forest topology. Users’ authoritative identities are hosted in one or more account forests, and Skype for Business is deployed in a separate resource forest (which itself may also host authoritative user identities). In general, Skype for Business users’ authoritative identities can be in the same forest as Skype for Business Server and/or in another forest, provided:
To achieve proper object and attribute synchronization into Azure AD in a multi-forest on-premises scenario, Microsoft strongly recommends using Azure AD Connect to synchronize from all forests that have enabled user accounts and the forest that contains Skype for Business. Assuming you synchronize from all forests, you must then configure Azure AD Connect to merge these identities and synchronize to Azure AD. Azure AD Connect is designed to handle this scenario, and provides a built-in option in the installation wizard to set this up, including setting up anchors to join identities.
In this scenario, there are multiple forests, each containing Skype for Business Server, and a single Microsoft 365 tenant. Each forest containing Skype for Business Server can be synchronized into Azure AD for that tenant using Azure AD Connect. At most, only one forest can be configured for Skype for Business hybrid at a given time. Before enabling hybrid in a forest, all SIP domains from all other forests must be disabled using the disable-csonlineSipDomain PowerShell cmdlet.
Both the Teams and Skype for Business Online services require that the correct Active Directory attributes exist and are populated in Azure AD.
If users’ identities exist across multiple forests, Azure AD Connect should do the merge. When this guidance is followed, Azure AD Connect will automatically synchronize the correct attributes, provided you do not modify either the Connectors or Sync Rules in Azure AD Connect.
If you don't synchronize from all forests that contain user identities and the Skype for Business Server deployment, you must still ensure the relevant identity and Skype for Business attributes are correctly populated into Azure AD for any user using Teams or Skype for Business (whether on-premises or online)--which will likely require additional on-premises directory synchronization.
In such scenarios, it's the customer’s responsibility to ensure proper configuration for populating the attributes into Azure AD. Keep the following in mind:
When you're done with a link, use the Back arrow in your browser to come back to this page.


contact
You can use the form below to get in touch with us. We'll be more than happy to hear from you, so don't hesitate and drop us a line!
All fields marked with * are required
You can use the form below to get in touch with us. We'll be more than happy to hear from you, so don't hesitate and drop us a line!
All fields marked with * are required


var borderColor: Color
Overrides Building.borderColor
Default border color, used for rendering
TODO should probably move this to renderer... this does not need to live "in" a Building


Use arrow keys to control:
Accelerate: Up Arrow
Steer: Left and Right Arrow
Show Stats: S
Game Goal
Drive the track without touching any of the red obstacles.  You can see the distance left on the tool bar on the top of the screen.


For each of the supported archiving formats there is a
correspondig entry
resource that represents a single
entry in such an archive.
All of these resources need to know the archive the entry should be read from, it can be specifed as either the archive attribute or a nested single-element resource collection.
The entry
types share the following set of attributes:
| Attribute | Description | Required |
| archive | The archive containing this resource | Yes, unless a nested resource collection has been specified. |
| name | The name of the archived resource | Yes |
| encoding | The encoding of filenames inside the archive | No;
platform default used if unspecified. Currently ignored by all
but zipentry |
An archive entry representing an entry in a AR archive.
<cmp:arentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.ar"/> </cmp:arentry>
Since Apache Compress Antlib 1.3.
An archive entry representing an entry in a ARJ archive.
<cmp:arjentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.arj"/> </cmp:arjentry>
Represents the entry named some-file.txt in archive some-archive.arj.
An archive entry representing an entry in a CPIO archive.
<cmp:cpioentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.cpio"/> </cmp:cpioentry>
Represents the entry named some-file.txt in archive some-archive.cpio.
Since Apache Compress Antlib 1.1.
An archive entry representing an entry in a Unix dump archive.
<cmp:dumpentry xmlns:cmp="antlib:org.apache.ant.compress" name="/some-file.txt"> <file file="some-archive.dump"/> </cmp:dumpentry>
Represents the entry named /some-file.txt in archive some-archive.dump.
Since Apache Compress Antlib 1.3.
An archive entry representing an entry in a 7z archive.
<cmp:sevenzentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.7z"/> </cmp:sevenzentry>
Represents the entry named some-file.txt in archive some-archive.7z.
An archive entry representing an entry in a TAR archive.
<cmp:tarentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.tar"/> </cmp:tarentry>
Represents the entry named some-file.txt in archive some-archive.tar.
An archive entry representing an entry in a ZIP archive.
Unlike
its counterpart
in Ant's core this Antlib's zipentry
can work on
archives that are not file system resources.
<cmp:zipentry xmlns:cmp="antlib:org.apache.ant.compress" name="some-file.txt"> <file file="some-archive.zip"/> </cmp:zipentry>
Represents the entry named some-file.txt in archive some-archive.zip.


{{template "header"}}
Hugoku is an open and automated PAAS solution to host Hugo static websites.
The name of hugoku came from the fusion of Hugo, Heroku and some power of Goku.
Hugo try to be a service like Heroku for automate the generation of static websites on the top of Hugo.


{% extends 'base_generic.html' %} {% block title %}
Are you sure want to remove this book from your cart?


Communication on differ-structure servicecenters
ServiceCenter and Eureka
Situation description：
- EurekaServer： The Service-center of Eureka
- AccountServer：The account server of register to Eureka
- Servicecomb-ServiceCenter：Servicecomb-ServiceCenter
- HelloServer：The server of register to Servicecomb-ServiceCenter，that dependent on account server
Instances cannot be discovered and accessed by each other between different service centers, in a traditional environment. This will be easy to implement when we use Syner. As shown below:
Operating environment
Before starting：
- Install ServiceCenter Release（>=1.3.0）
$ project_dir=`pwd` $ tar -zxvf apache-servicecomb-service-center-1.3.0-linux-amd64.tar.gz
- Download the sample
git clone https://github.com/apache/servicecomb-service-center.git cd ${project_dir}/servicecomb-service-center/syncer
Step 1: Launch the Eureka environment and services
One of the machines： <IP_ADDRESS>
1. Compile EurekaServer and AccountServer
$ cd samples/multi-servicecenters/eureka
$ mvn clean install
2. Run EurekaServer：
- Modify the startup configuration
File path：${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/eureka/eureka-server/src/main/resources/application.yaml
spring: application: name: eureka-server server: port : 8761 # servlet: # context-path: /eureka eureka: instance: hostname : <IP_ADDRESS> client: registerWithEureka : false fetchRegistry : false serviceUrl: defaultZone : http://${eureka.instance.hostname}:${server.port}/eureka/ management: endpoints: web: exposure: include: "*"
- Run server
$ cd ${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/eureka/eureka-server/ $ nohup mvn spring-boot:run & >> eureka-server.log 2>&1 &
Open http://<IP_ADDRESS>:8761 in the browser, this is successful if the following page appears.
3. Run AccountServer
- Modify the startup configuration
File path：${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/eureka/account-server/src/main/resources/application.yamlspring: application: name: account-server server: port: 8090 eureka: instance: hostname: <IP_ADDRESS> client: service-url: defaultZone: http://${eureka.instance.hostname}:8761/eureka/ management: endpoints: web: exposure: include: "*"
- Start AccountServer
$ cd ${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/eureka/account-server $ mvn spring-boot:run #This is successful if the result like this， 2019-09-19 17:20:35.534 INFO 20890 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8090 (http) with context path '' 2019-09-19 17:20:35.548 INFO 20890 --- [ main] .s.c.n.e.s.EurekaAutoServiceRegistration : Updating port to 8090 2019-09-19 17:20:35.551 INFO 20890 --- [ main] o.a.s.s.account.AccountApplication : Started AccountApplication in 3.92 seconds (JVM running for 6.754) 2019-09-19 17:20:35.617 INFO 20890 --- [nfoReplicator-0] com.netflix.discovery.DiscoveryClient : DiscoveryClient_ACCOUNT-SERVER/<IP_ADDRESS>:account-server:8090 - registration status: 204
Reopen http://<IP_ADDRESS>:8761, you can see that AccountServer has been registered successfully.
4. Run Syncer of eureka
$ cd ${project_dir}/apache-servicecomb-service-center-1.3.0-linux-amd64/
$ ./syncer daemon --sc-addr http://<IP_ADDRESS>:8761/eureka --bind-addr <IP_ADDRESS>:30190 --rpc-addr <IP_ADDRESS>:30191 --sc-plugin=eureka --node eureka
#This is successful if the result like this，
2019-09-19T17:28:28.809+0800 INFO etcd/agent.go:55 start etcd success
2019-09-19T17:28:28.809+0800 INFO grpc/server.go:94 start grpc success
2019-09-19T17:28:28.809+0800 DEBUG server/handler.go:39 is leader: true
2019-09-19T17:28:28.809+0800 DEBUG server/handler.go:43 Handle Tick
Step 2: Start the Servicecenter environment and services
Another machine： <IP_ADDRESS>
1. Compile HelloServer
$ cd ${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/servicecenter/hello-server/
$ GO111MODULE=on go build
2. Run Servicecenter
- Modify the startup configuration：
File path：${project_dir}/apache-servicecomb-service-center-1.3.0-linux-amd64/conf/app.conffrontend_host_ip = <IP_ADDRESS> frontend_host_port = 30103 #sever options #if you want to listen at ipv6 address, then set the httpaddr value like: #httpaddr = 2400:A480:AAAA:200::159 (global scope) #httpaddr = fe80::f816:3eff:fe17:c38b%eth0 (link-local scope) httpaddr = <IP_ADDRESS> httpport = 30100 #...以下省略...
- Run ServiceCenter and Frontend
$ cd ${project_dir}/apache-servicecomb-service-center-1.3.0-linux-amd64 $ ./start-service-center.sh $ ./start-frontend.sh
Open http://<IP_ADDRESS>:30103 in the browser, this is successful if the following page appears.
3. Run HelloServer
- Modify the startup configuration
File path：${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/servicecenter/hello-server/conf/microservice.yamlservice: # Micro service configuration appId: eureka # The appID is "eureka", if the instance synced from eureka. name: hello-server version: 0.0.1 instance: # Instance information protocol: rest listenAddress: <IP_ADDRESS>:8091 #The listening address of the instance provider: # Provider information appId: eureka name: account-server version: 0.0.1 registry: address: http://<IP_ADDRESS>:30100
- Start HelloServer
$ cd ${project_dir}/servicecomb-service-center/syncer/samples/multi-servicecenters/servicecenter/hello-server $ ./hello-server 2019-09-19T18:37:50.645+0800 DEBUG servicecenter/servicecenter.go:163 send heartbeat success 2019-09-19T18:37:50.645+0800 WARN servicecenter/servicecenter.go:85 discovery provider failed, appID = eureka, name = account-server, version = 0.0.1 2019-09-19T18:37:50.645+0800 INFO servicecenter/servicecenter.go:87 waiting for retry
Reopen http://<IP_ADDRESS>:30103, you can see that HelloServer has been registered successfully.
But, the instance of AccountServer belonging to the EurekaServer cannot be found, the HelloServer is in the retry state.
(Warning: We must complete the operation within 3 retry times (90 seconds))
4.Run Syncer of service-center
$ cd ${project_dir}/apache-servicecomb-service-center-1.3.0-linux-amd64/
$ ./syncer daemon --sc-addr http://<IP_ADDRESS>:30100 --bind-addr <IP_ADDRESS>:30190 --rpc-addr <IP_ADDRESS>:30191 --sc-plugin=servicecenter --join-addr <IP_ADDRESS>:30190 --node servicecenter
#This is successful if the result like this，
2019-09-19T18:44:35.536+0800 DEBUG server/handler.go:62 is leader: true
2019-09-19T18:44:35.536+0800 DEBUG server/handler.go:79 Receive serf user event
2019-09-19T18:44:35.536+0800 DEBUG serf/agent.go:130 member = servicecenter, groupName = 0204d59328090c2f4449a088d4e0f1d8
2019-09-19T18:44:35.536+0800 DEBUG serf/agent.go:130 member = eureka, groupName = 34f53a9520a11c01f02f58f733e856b3
2019-09-19T18:44:35.536+0800 DEBUG server/handler.go:97 Going to pull data from eureka <IP_ADDRESS>:30191
2019-09-19T18:44:35.536+0800 INFO grpc/client.go:76 Create new grpc connection to <IP_ADDRESS>:30191
2019-09-19T18:44:35.538+0800 DEBUG servicecenter/servicecenter.go:87 create service success orgServiceID= account-server, curServiceID =<PHONE_NUMBER>5ec96d90353e3c041bdf3586fdbbae
2019-09-19T18:44:35.538+0800 DEBUG servicecenter/servicecenter.go:90 trying to do registration of instance, instanceID = <IP_ADDRESS>:account-server:8090
2019-09-19T18:44:35.540+0800 DEBUG servicecenter/sync.go:63 Registered instance successful, instanceID = 78bca3e2daca11e99638fa163eca30e0
Step 3: Results Verification
-
At this point, HelloServer gets the instance successfully, and calls the CheckHealth interface of AccountServer.
- Open the website of Euraka and ServiceCenter respectively. Both service centers contain all the instance information.
- Call the Login interface of HelloServer used the command line of curl,
$ curl -X POST \ http://<IP_ADDRESS>:8091/login \ -H 'Content-Type: application/json' \ -d '{ "user":"Jack", "password":"123456" }' welcome Jack
HelloServer and AccountServer respectively print the following information.
AccountServer
HelloServer


ldap_mod_del (PHP 4, PHP 5, PHP 7) ldap_mod_del — Delete attribute values from current attributes 说明 bool ldap_mod_del ( resource $link_identifier , string $dn , array $entry ) Removes one or more attributes from the specified dn. It performs the modification at the attribute level as opposed to the object level. Object-level deletions are done by the ldap_delete() function. 参数 link_identifier An LDAP link identifier, returned by ldap_connect(). dn The distinguished name of an LDAP entity. entry 返回值 成功时返回 TRUE，或者在失败时返回 FALSE。 参见 • ldap_mod_add() - Add attribute values to current attributes • ldap_mod_replace() - Replace attribute values with new ones User Contributed Notes 13 notes =============================================================================== For anyone interested in removing a user from a group, you can use ldap_mod_del () as follows: $group = 'CN=mygroup,OU=myOU,DC=mydomain,DC=com'; $group_info['member'] = 'CN=User\, Test,CN=Users,DC=mydomain,DC=com'; ldap_mod_del($ldap, $group, $group_info); I have tested this using Active Directory on a Win 2K3 server. =============================================================================== To remove all of a particular attribute, feed it an empty array. For example, to remove all members from a group: array())); ?> =============================================================================== Te remove a user from a group in Apple's Open Directory, you need to also remove the members generated uid from the group. Removing the users is as follows: "username", "apple-group-memberguid"=>"846DE847-D73D-428D-83A8-B95B606C511B" ); //connect and bind $ldapconnect = ldap_connect("myserver.com",389); ldap_bind($ldapconnect, $ldapDN, $ldapPass); //removing member from group ldap_mod_del($ldapconnect, $groupDn, $removal); //unbind ldap_unbind($ldapconnect); ?> =============================================================================== We often need to delete "objectclass" below follows a simple code to make this successful removal. $userdataModifydelSamba = array(); $userdataModifydelSamba['objectClass'] = array(); $userdataModifydelSamba['objectClass'][0] = 'sambaSamAccount'; $userdataModifydelSamba['sambasid'] = array(); $userdataModifydelSamba['sambantpassword'] = array(); $userdataModifydelSamba['sambahomedrive'] = array(); $userdataModifydelSamba['sambadomainname'] = array(); $userdataModifydelSamba['sambaacctflags'] = array(); $userdataModifydelSamba['sambaprimarygroupsid'] = array(); $userdataModifydelSamba['sambapwdlastset'] = array(); $sucess = @ldap_mod_del($connection, $dn, $result); if(!$sucess) { throw new Exception("error " . ldap_err2str(ldap_errno($connection))); } =============================================================================== and please don't forget: you can't delete all attributes, when at least one is required. =============================================================================== The above example has also been proven to work in the iPlanet / Sun One Directory Server 5.0/5.1. As an example: $attrs["mail"] = array(); ldap_mod_del($ldapConnID,$dn,$attrs); or $attrs["mail"] = array(); $attrs["telephonenumber"] = array(); ldap_mod_del($ldapConnID,$dn,$attrs); This will remove all occurences of attributes in the entry specified by the dn. =============================================================================== At least with OpenLDAP 1.2.x to remove an attribute regardless of it's value you have to assign: $attrs["AttributeName"]=array(); after ldap_mod_del($ds,$dn,$attrs) all occurences of AttributeName will be removed =============================================================================== To remove all instances of an attribute: $entry["attrname"][]="value1"; $entry["attrname"][]="value2"; ... $entry["attrname"][]="valueN"; ldap_mod_del($ds, $dn, $entry); ===============================================================================
uid: testuser mail<EMAIL_ADDRESS>mail<EMAIL_ADDRESS>to remove the values of mail so that only the second value for mail exists:
$entry["mail"] =<EMAIL_ADDRESS>$result = ldap_mod_del($connID, $dn, $entry);if you want to remove all instances of an attribute..... ==>
$entry["mail"][0] =<EMAIL_ADDRESS>$entry["mail"][1] =<EMAIL_ADDRESS>$result = ldap_mod_del($connID, $dn, $entry);are not? =============================================================================== Using ldap_modify with a blank string works if you aren't propagating your LDAP database, even though it returns the error. Still, I'd say don't do it, as it smacks of something that will be fixed in a future version. =============================================================================== I have found that the syntax: $entry["mail"] = ""; Will NOT delete the mail attribute using the OpenLDAP server. You must specify the attribute value to delete it successfully, otherwise you will recieve an "Invalid Syntax" error from the server. The error: "Inappropriate Matching" will be displayed if the attribute you are trying to delete has no equality rule in the schema. I had a problem deleting the attribute facsimilieTelephoneNumber, and it was because my core.schema file did not have an EQUALITY definition for that attribute. I copied the telephoneNumber EQUALITY rule and it worked perfectly. =============================================================================== To remove all instances of an attribute you can use ldap_modify with an empty value for that attribute. $entry["mail"] = ""; $result = ldap_modify($connID, $dn, $entry); =============================================================================== After a couple hours of searching and not finding anything on the ldap_mod_del function worth anything, I started trying to figure out myself what format the "array entry" parameter needed to be in. Here is what I found: The entry array is a hash with the attribute name as the hash key and the specific value you want deleted for that attribute as the corresponding hash value. -- Example Current values for the attributes of of a particular entry: uid: testuser mail<EMAIL_ADDRESS>mail<EMAIL_ADDRESS>How to remove the first value of mail so that only the second value for mail exists: $entry["mail"] =<EMAIL_ADDRESS>$result = ldap_mod_del($connID, $dn, $entry); So if you want to remove all instances of an attribute, you have to do it one by one.


google_map_directions.Rd
Opens Google Maps in a browser with the resutls of the specified directions query
google_map_directions(origin = NULL, origin_place_id = NULL, destination = NULL, destination_place_id = NULL, travel_mode = NULL, dir_action = NULL, waypoints = NULL, waypoint_place_ids = NULL)
| origin | string of an address or search term, or vector of lat/lon coordinates |
|---|---|
| origin_place_id | a Google place id (https://developers.google.com/places/place-id).
If used, you must also specify an |
| destination | string of an address or vector of lat/lon coordinates |
| destination_place_id | a Google place id (https://developers.google.com/places/place-id).
If used, you must also specify an |
| travel_mode | one of |
| dir_action | can only be "navigate". If set, the map will attempt to launch turn-by-turn navigation or route preview to the destination. |
| waypoints | List of either place names, addresses, or |
| waypoint_place_ids | vector of |
There is no need for an api key
Waypoints are not supported on all Google Map products. In those cases, this parameter will be ignored.
# NOT RUN { google_map_directions(origin = "Google Pyrmont NSW", destination = "QVB, Sydney", destination_place_id = "ChIJISz8NjyuEmsRFTQ9Iw7Ear8", travel_mode = "walking") google_map_directions(origin = "Melbourne Cricket Ground", destination = "Flinders Street Station", dir_action = "navigate") google_map_directions(origin = "Melbourne Cricket Ground", destination = "Flinders Street Station", travel_mode = "walking", waypoints = list("National Gallery of Victoria", c(-37.820860, 144.961894))) google_map_directions(origin = "Paris, France", destination = "Cherbourg, France", travel_mode = "driving", waypoints = list("Versailles, France", "Chartres, France", "Le Mans, France", "Caen, France")) google_map_directions(origin = "Paris, France", destination = "Cherbourg, France", travel_mode = "driving", waypoints = list("Versailles, France", "Chartres, France", "Le Mans, France", "Caen, France"), waypoint_place_ids = list("ChIJdUyx15R95kcRj85ZX8H8OAU", "ChIJKzGHdEgM5EcR_OBTT3nQoEA", "ChIJG2LvQNCI4kcRKXNoAsPi1Mc", "ChIJ06tnGbxCCkgRsfNjEQMwUsc")) # }


This is my website.
We are trying to upload the website to the github.
Name
Country
Milad
Afghanistan
Prashant
Hindustan
Yogi
Nepal


Season's 3rd cruise vessel berths at New Mangalore Port
by HarshaThe third cruise vessel of the season named ‘Silver Spirit’ called at the New Mangalore Port on Thursday.
There were 450 passengers and 300 crew on board of the cruise. The passengers were welcomed in a traditional manner by showcasing local folk culture, including Yakshagana. As many as 250 passengers had made bookings to visit various tourist destinations in and around Mangaluru. The vessel will be sailing back in the evening.
The vessel arrived from Mormugao Port, Goa. From Mangaluru it will sail to Kochi. The cruise season began on November 4 and as many as 24 cruise vessels have already confirmed their visit to the New Mangalore Port in the current season.


Lebanon President Aoun, Hariri meet to discuss way out of crisis
BEIRUT (Reuters) - Lebanese President Michel Aoun and caretaker Prime Minister Saad al-Hariri held talks on Thursday on responding to three weeks of nationwide anti-government protests that have thrown the country into its worst crisis in decades.
In a statement, the president’s office said the two discussed the “general situation” and efforts toward “finding a solution to the current government situation”.
Hariri, who stepped down a week ago but remains in a caretaker role, has been exploring the possibility of forming a technocratic government, with fewer cabinet posts allotted to the country’s large number of sectarian groups.


At Altoro Mutual, we encourage our employees to donate their time and energy to help their communities and even give our employees time off to do so. Some of our volunteer and giving programs include:
Altoro Mutual pledges to match employee contributions to any non-profit up to $15,000 per employee each year.
Altoro Mutual is proud of our employee volunteers and pledges to donate cash grants to the organizations where employees give their time.
For every 10 hours of volunteer time by an Altoro Mutual employee, we will donate $250 to the nonprofit organization. In total, employees can acquire up to $5,000 each calendar year for their nonprofits or schools.
If you are a non-profit organization, then help us help you. Contact Altoro Mutual for more information, or download this Brochure


CMSC498V Student Projects (Fall 2017)
- Sudoku Solver by Taeyoon Kim & Michael Anderjaska
Implemention of a sudoku solver in Haskell, check it out: github@taekim97/Haskell-Sudoku-Solver
- 2048 by Ashwin Jeyaseelan & Sang-Kyun Han
Implementation of the 2048 game in Haskell, check it out: github@8Gitbrix/2048Haskell
- Wires Game by Davis Silveman & Kristian Osborne
This is a simplistic spiderman-physics game based off of Double Wires. That game is definitely better, so probably play that instead. Check it out: github@sinistersnare/wires
- Connect4 by Andres Anhalzer & Jaime Azcorra
Connect4 implementation in Haskell, check it out: github@aanhalzer/Connect4
- Haskify by Colin Burr & John Kastner
Haskify is a (currently) GETful API wrapper for the Spotify API written in Haskell. Check it out: github@sw3dish/haskify
- Liquid Haskell Proofs by Will Kunkel & Patrick Owen
Formally prove the theorems outlined in the “Reasoning about Programs” chapter of the book “Programming in Haskell” using Liquid Haskell. Check it out: github@wkunkel/liquidhaskell-proofs
- Black Jack by Filip Laestadius & PJ Wise
Blackjack w/ gui and potentially more AI players. Check it out: github@FilipLae/ProjectBlackjack
- Chess by Braeden Mollot & Lay Desai
Chess implemented as a Haskell program. Check it out: github@bmollot/haskell-chess
- Lambda Calculus by Kyle DeLancey
Ιmplementation of a parser, type-checker, and interpreter for lambda calculus. Check it out: github@kdelancey/lambda-calculus-kyle
- HaskFlash by Alexander Zhang & Jesse Rillion Ledesma
HaskFlash is a web app flashcard written in Haskell. Users can input sets of word pairs into the system and quiz themselves with random pairs. Check it out: github@alzhang/HaskFlash
- Checkers by Spencer Chen & Simon Schlegel
Implemention of the checkers game between human player and AI bot. Check it out: github@spchen/haskell-checkers
- Mancala by Vlad Rachev & Marc Eastman
Implementation of 2 player game using Haskell and Javascript. Check it out: github@vrachev/mancalahaskell
- Neural Convnets by Kevin Chen & Suteerth Vishnu
Demonstrate that Haskell’s powerful abstractions allow for the implementation of sophisticated network architectures which would be difficult to do with standard approaches (i.e Tensorflow/Pytorch). Check it out: github@kevchn/neural-convnets
- Id3 by Ryan Kiernan & Nick Condron
Check it out: github@rkiernan/haskell-id3
- Super Gomoku by Pedro Carvalho & Mikey Saugstad
GUI for the Super Gomoku. Try the game here. Check it out: github@payros/super-gomoku
- Lambda Chat by Sashank Thupukari & Joshua Lee
A chat messaging service implemented in Haskell (Yesod) and React. HM is an implementation of a messaging service implemented using the Yesod Web Framework for Haskell and React. Check it out: github@helloworld/lambda-chat/
- Proposition Prover by Robert Fleischman & Steven Tvardzik
Implementation of proposition solver in Haskell. For example suppose the assumptions are, {if A then B, if B then C, A} and the goal is C, the solver might output {if A then C: by hypothetical syllogism, C: by modus ponens} thus proving C from the initial assumptions. Check it out: github@saturnerianis/Haskell_Proposition_Prover
- Comms by Andrew Putlock & Brian Oluwo
Decentralized email on Ethereum. Comms implements a minimally spec compliant version of both SMTP and POP3 w/ Ethereum as the database of sorts. Check it out: github@aputlock/comms
- Rubiks Cube by Jonathan Chan & Vivian Yung
Creation of a Rubik’s cube solver in Haskell using native libraries. Check it out: github@jjchan1/RubiksCubeSolver


After waiting about 3 weeks I finally got my TTGO VGA32 v1.4 from Aliexpress. Immediately, after getting my hands on the device I wanted to test it with FabGL library.
NOTE: While powering the board using a USB 2.0 port, my 20+ year old PS/2 keyboard refused to work. Probably the USB port was not able to source enough current. In the end I used a power supply designed for Raspbarry PI 3B. With that setup everything worked correctly. USB 3.0 can source much more current than USB 2.0, but I did not test that setup.
It must be admitted that FabGL is compatible with TTGO VGA32 board, but only with version v1.2
.
Version v1.4
has slightly different pinout (MISO
and MOSI
connections to SDCARD use different IO ports).
To run PCEmulator example we must edit PCEmulator source code:
Notice that now we will use ports 2 and 12 for MISO
and MOSI
lines.
After this change PCEmulator starts without any troubles. I could run Windows 3.11 and use all the provided programs:
Although Windows 3.11 works as intended, it is working quite slow. It can take several seconds to e.g. open Excel, on the other hand you can comfortably play Reversi. When it comes to provided DOS games, I had less luck. Most of them either froze the emulator or simply refuse to start. Looks like there is still much work to be done on this project.
Anyway having a cheap, compatible, and ready to use board is very nice. With FabGL on top of it, I am sure I will have no troubles finding some good use of it.
Resources:


Two years after ban,FGM still rampant in Nigeria
After ban of FGM in Nigeria,the practice continues. Ongechi Ekeanyanwu reports.
FGM practices are rooted within family beliefs and traditions.Sola Abe reports.... Read More
Onsun records hightest prevalence of Female Genital Mutilation (FGM) in Nigeria...Read More
Sixty year old Longoima Lesiale has three wives and 21 children. Five out of his seven daughters have undergone the cut.Read More
Traditional birth attendants (TBA) in the Somali community play a major role in perpetuating the cut.... Read More


{{ partial "learning/blog/top.html" . }} {{ partial "learning/blog/content.html" . }} {{ partial "learning/blog/bottom.html" . }}


| To Sridhar Advocate New No. 14, Old No. 82, Ranjit Towers, Flat No.5, Ist Avenue,Indira Nagar Adyar, Chennai, Tamil Nadu-600020 |
||||||||
| MK Law Chambers | ||||||||
| No.75, "SRI Keshava", 1st Floor, CHBCS Layout,5th Main road, Govindaraja Nagar Bengaluru (Bangalore) Urban,Karnataka-560040 |
Invoice #: 123 Created: June 1, 2019 |
|||||||
| Description | Amount | |||||||
| Professional Charges in connection with the following services rendered:- | ₹ | |||||||
| Faciliation of obtaining Certificate Lesser Tax Deduction at Source | 50,000.00 | |||||||
| Expenses and Other incedentals | 20,000.00 | |||||||
| Gross Total: | 70,000.00 | |||||||
|
Net Total: | 77,000.00 | ||||||
| Amount in Words :Rupees Seventy Seven Thousand Only | ||||||||
| Bank Details | PAN | AAAAA1111A | ||||||
| Beneficiary Name | Kaushik M | |||||||
| Bank Name | Indian Overseas Bank | |||||||
| Branch | Vijayanagar | |||||||
| Account No. |<PHONE_NUMBER>001234 | |||||||
| Nature of Account | Current | |||||||
| IFSC Code | IOBA0002633 |