Preparation time
less than 30 mins
Cooking time
over 2 hours
Serves
Serves 4
Dietary
For the salted caramel, place the dark muscovado sugar and cream in a saucepan. Using thoroughly wet hands and spoon, add the glucose to the sugar and cream mixture and bring the mixture to the boil. (NB: Glucose sticks to dry hands and spoons.)
Meanwhile, heat the caster sugar in another pan over a low heat, stirring continuously until golden-brown and caramelised. Remove from the heat instantly.
Carefully, pour the hot cream and glucose mixture over the caramelised sugar (the mixture may splutter) and return the mixture to a simmer. Continue to simmer until the caramel mixture has thickened and darkened and the temperature reaches 102C. (NB: Use a sugar thermometer to check the temperature of the caramel.)
Remove the pan from the heat and carefully stir in the lemon juice and salt. Season with freshly ground black pepper and stir gently once more. Set aside to cool slightly.
Pour the caramel into small silicone moulds or ice cube trays. When the caramel has completely cooled, freeze it for at least 2 hours, or until set. (NB: You will not need all of the caramel for this recipe. The remaining caramel can be stored in the freezer for up to 3 months.)
For the chocolate fondant, grease the insides of 4 ring moulds, 5cm/2in diameter and 6cm/2½in deep, with softened butter.
In a bowl, mix together the cocoa powder and caster sugar until well combined. Dust the inside of the ring moulds with the mixture, shaking off any excess. Place the prepared ring moulds onto a baking tray lined with greaseproof paper.
Melt the chocolate and butter in a heatproof bowl set over a pan of simmering water (do not allow the base of the bowl to touch the water).
Meanwhile, place the eggs and egg yolk into a bowl and whisk together until pale and fluffy.
Sift the icing sugar into the whisked eggs, whisking until well combined. Next, sift in the arrowroot and whisk until the mixture is pale, thick, has doubled in volume and the beaters leave a trail on the surface of the mixture when lifted. (NB: This is called the ribbon stage.)
Whisk the melted chocolate mixture into the egg mixture until well combined.
Using a ladle, fill each of the prepared ring moulds with the chocolate fondant mixture until they are three-quarters full.
Add one piece of frozen caramel to the centre of each ring mould and press down so that it is nestled halfway down the mould. Gently push the chocolate fondant mixture over the caramel to cover it completely. Chill the chocolate fondants in the fridge for at least 30 minutes and up to 24 hours.
When the chocolate fondants have chilled, preheat the oven to 200C/390F/Gas 6.
Transfer the chilled chocolate fondants to the oven and bake for 5 minutes, or until the tops have just formed a crust. Remove the fondants from the oven and allow to cool.
When the fondants have cooled, run a butter knife around the insides of each mould to loosen the fondants. Carefully remove the moulds. Chill the fondants in the fridge for at least 30 minutes.
Meanwhile, for the chocolate sauce, heat the milk in a pan until just simmering. Add the chocolate and whisk well until smooth and well combined, then remove from the heat.
When ready to serve, preheat the oven to 180C/355F/Gas 4.
Bake the fondants for 8 minutes, or until the cakes have risen.
To serve, place a spoonful of the chocolate sauce into the centre of each of four serving plates, smoothing it out into an oblong. Dust the chocolate fondants with icing sugar and place on top of the puddle of sauce, in the middle. Sprinkle the caramelised pistachios and almonds around the plate. Place one quenelle of pistachio ice cream next to the fondant. Serve immediately.


Run the JSON-LD schema against a manifest. This Is Not A Validator
Version
Try with these sample files
Select schema:


Stopwatch
00:00:00
Start/Pause
Restart/Reset
Note: The Restart/Reset button will return the timer to zero and start timing again if clicked while the timer is running. If the timer is stopped, the Restart/Reset button will set it to zero but it will not run again until "Start" is hit.
Countdown Timer
00:00:00
Start/Pause Timer
Please enter the countdown timer length enter up to 10 minutes in 00:00:00 format (minutes:seconds:hundredths)


| Opcode/Instruction | Op/En | 64/32 bit Mode Support | CPUID Feature Flag | Description |
|---|---|---|---|---|
|
0F 38 04 /r1 PMADDUBSW mm1, mm2/m64 |
RM | V/V | SSSE3 | Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to mm1. |
|
66 0F 38 04 /r PMADDUBSW xmm1, xmm2/m128 |
RM | V/V | SSSE3 | Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to xmm1. |
|
VEX.NDS.128.66.0F38.WIG 04 /r VPMADDUBSW xmm1, xmm2, xmm3/m128 |
RVM | V/V | AVX | Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to xmm1. |
|
VEX.NDS.256.66.0F38.WIG 04 /r VPMADDUBSW ymm1, ymm2, ymm3/m256 |
RVM | V/V | AVX2 | Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to ymm1. |
|
EVEX.NDS.128.66.0F38.WIG 04 /r VPMADDUBSW xmm1 {k1}{z}, xmm2, xmm3/m128 |
FVM | V/V |
AVX512VL AVX512BW |
Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to xmm1 under writemask k1. |
|
EVEX.NDS.256.66.0F38.WIG 04 /r VPMADDUBSW ymm1 {k1}{z}, ymm2, ymm3/m256 EVEX.NDS.512.66.0F38.WIG 04 /r VPMADDUBSW zmm1 {k1}{z}, zmm2, zmm3/m512 |
FVM FVM |
V/V V/V |
AVX512VL AVX512BW AVX512BW Multiply signed and unsigned bytes, add |
Multiply signed and unsigned bytes, add horizontal pair of signed words, pack saturated signed-words to ymm1 under writemask k1. horizontal pair of signed words, pack saturated signed-words to zmm1 under writemask k1. |
NOTES:
1. See note in Section 2.4, “AVX and SSE Instruction Exception Specification” in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 2A and Section 22.25.3, “Exception Conditions of Legacy SIMD Instructions Operating on MMX Registers” in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 3A.
| Op/En | Operand 1 | Operand 2 | Operand 3 | Operand 4 |
| RM | ModRM:reg (r, w) | ModRM:r/m (r) | NA | NA |
| RVM | ModRM:reg (w) | VEX.vvvv (r) | ModRM:r/m (r) | NA |
| FVM | ModRM:reg (w) | EVEX.vvvv (r) | ModRM:r/m (r) | NA |
(V)PMADDUBSW multiplies vertically each unsigned byte of the destination operand (first operand) with the corre-sponding signed byte of the source operand (second operand), producing intermediate signed 16-bit integers. Each adjacent pair of signed words is added and the saturated result is packed to the destination operand. For example, the lowest-order bytes (bits 7-0) in the source and destination operands are multiplied and the intermediate signed word result is added with the corresponding intermediate result from the 2nd lowest-order bytes (bits 15-8) of the operands; the sign-saturated result is stored in the lowest word of the destination register (15-0). The same oper-ation is performed on the other pairs of adjacent bytes. Both operands can be MMX register or XMM registers. When the source operand is a 128-bit memory operand, the operand must be aligned on a 16-byte boundary or a general-protection exception (#GP) will be generated.
In 64-bit mode and not encoded with VEX/EVEX, use the REX prefix to access XMM8-XMM15.
128-bit Legacy SSE version: The first source and destination operands are XMM registers. The second source operand is an XMM register or a 128-bit memory location. Bits (MAX_VL-1:128) of the corresponding destination register remain unchanged.
VEX.128 and EVEX.128 encoded versions: The first source and destination operands are XMM registers. The second source operand is an XMM register or a 128-bit memory location. Bits (MAX_VL-1:128) of the corre-sponding destination register are zeroed.
VEX.256 and EVEX.256 encoded versions: The second source operand can be an YMM register or a 256-bit memory location. The first source and destination operands are YMM registers. Bits (MAX_VL-1:256) of the corresponding ZMM register are zeroed.
EVEX.512 encoded version: The second source operand can be an ZMM register or a 512-bit memory location. The first source and destination operands are ZMM registers.
PMADDUBSW (with 64 bit operands)
DEST[15-0] = SaturateToSignedWord(SRC[15-8]*DEST[15-8]+SRC[7-0]*DEST[7-0]); DEST[31-16] = SaturateToSignedWord(SRC[31-24]*DEST[31-24]+SRC[23-16]*DEST[23-16]); DEST[47-32] = SaturateToSignedWord(SRC[47-40]*DEST[47-40]+SRC[39-32]*DEST[39-32]); DEST[63-48] = SaturateToSignedWord(SRC[63-56]*DEST[63-56]+SRC[55-48]*DEST[55-48]);
PMADDUBSW (with 128 bit operands)
DEST[15-0] = SaturateToSignedWord(SRC[15-8]* DEST[15-8]+SRC[7-0]*DEST[7-0]); // Repeat operation for 2nd through 7th word SRC1/DEST[127-112] = SaturateToSignedWord(SRC[127-120]*DEST[127-120]+ SRC[119-112]* DEST[119-112]);
VPMADDUBSW (VEX.128 encoded version)
DEST[15:0] (cid:197) SaturateToSignedWord(SRC2[15:8]* SRC1[15:8]+SRC2[7:0]*SRC1[7:0]) // Repeat operation for 2nd through 7th word DEST[127:112] (cid:197) SaturateToSignedWord(SRC2[127:120]*SRC1[127:120]+ SRC2[119:112]* SRC1[119:112]) DEST[VLMAX-1:128] (cid:197) 0
VPMADDUBSW (VEX.256 encoded version)
DEST[15:0] (cid:197) SaturateToSignedWord(SRC2[15:8]* SRC1[15:8]+SRC2[7:0]*SRC1[7:0]) // Repeat operation for 2nd through 15th word DEST[255:240] (cid:197) SaturateToSignedWord(SRC2[255:248]*SRC1[255:248]+ SRC2[247:240]* SRC1[247:240]) DEST[VLMAX-1:256] (cid:197) 0
VPMADDUBSW (EVEX encoded versions)
(KL, VL) = (8, 128), (16, 256), (32, 512) FOR j (cid:197) 0 TO KL-1 i (cid:197) j * 16 IF k1[j] OR *no writemask* THEN DEST[i+15:i] (cid:197) SaturateToSignedWord(SRC2[i+15:i+8]* SRC1[i+15:i+8] + SRC2[i+7:i]*SRC1[i+7:i]) ELSE IF *merging-masking* ; merging-masking THEN *DEST[i+15:i] remains unchanged* ELSE *zeroing-masking* ; zeroing-masking DEST[i+15:i] = 0 FI FI; ENDFOR; DEST[MAX_VL-1:VL] (cid:197) 0
VPMADDUBSW __m512i _mm512_mddubs_epi16( __m512i a, __m512i b);
VPMADDUBSW __m512i _mm512_mask_mddubs_epi16(__m512i s, __mmask32 k, __m512i a, __m512i b);
VPMADDUBSW __m512i _mm512_maskz_mddubs_epi16( __mmask32 k, __m512i a, __m512i b);
VPMADDUBSW __m256i _mm256_mask_mddubs_epi16(__m256i s, __mmask16 k, __m256i a, __m256i b);
VPMADDUBSW __m256i _mm256_maskz_mddubs_epi16( __mmask16 k, __m256i a, __m256i b);
VPMADDUBSW __m128i _mm_mask_mddubs_epi16(__m128i s, __mmask8 k, __m128i a, __m128i b);
VPMADDUBSW __m128i _mm_maskz_maddubs_epi16( __mmask8 k, __m128i a, __m128i b);
PMADDUBSW: __m64 _mm_maddubs_pi16 (__m64 a, __m64 b)
(V)PMADDUBSW: __m128i _mm_maddubs_epi16 (__m128i a, __m128i b)
VPMADDUBSW:
__m256i _mm256_maddubs_epi16 (__m256i a, __m256i b)
None.
Non-EVEX-encoded instruction, see Exceptions Type 4.
EVEX-encoded instruction, see Exceptions Type E4NF.nb.


This chapter describes how an application can use the fax libraries and Mailbox library to compose and send a fax. Most GEOS devices, including the Nokia 9000i Communicator, come with an application that composes and sends simple fax documents; this chapter will show you how you can write a program that composes a custom fax using graphics commands.
This chapter assumes that you know the basics of GEOS programming. It also assumes that you know how to draw the image that you want to fax, given a GState to draw to. (Most visible objects draw themselves when sent a
MSG_VIS_DRAW
; documentation of kernel drawing commands may be found in
A PrintControl object provides the API for drawing the contents of the fax; while this chapter will tell you what you need to know for simple faxes, more information about the PrintControl is available in .
Sending a fax may be broken down into the following tasks:
Ideally, these tasks are carried out using standard object classes that conform to the device's look and feel.
1 Destination Phone Number
2 Drawing the Contents
2.1 Declaring the Objects
2.2 Supplying the Document's Name
2.3 Supplying the Fax's Contents
To prompt the user for the fax's destination phone number while employing the device's standard look and feel, we will use the Mailbox library and its fax adjuncts. Specifically, we will use a
MailboxSendControl
object, configured for use with fax.
Make sure the following lines appear in the application's .gp file:
library mailbox # Defines MailboxSendControlClass library spool # Defines PrintControlClass
We will use a
MailboxSendControl
object to provide the UI that prompts the user for a phone number. When it comes time to draw the contents of our fax, we'll also need a
PrintControl
object.
We make sure that these controller objects are added to the correct GCN lists in the declaration of our application's Application object:
Code Display 4-1 Adding the Fax Controls to the Proper GCN Lists
In the declaration of the application's Application object, we make sure that the MailboxSendControl and PrintControl objects are placed on the proper GCN lists.
@object ... MyApp = { ... gcnList(MANUFACTURER_ID_GEOWORKS, GAGCNLT_SELF_LOAD_OPTIONS) = ... @MyPrintControl, @MySendControl; gcnList(MANUFACTURER_ID_GEOWORKS, MGCNLT_ACTIVE_LIST) = ... @MySendControl; gcnList(MANUFACTURER_ID_GEOWORKS, GAGCNLT_MAILBOX_SEND_CONTROL) = ... @MySendControl; ATTR_GEN_APPLICATION_PRINT_CONTROL = @MyPrintControl; }
We make sure that the
MailboxSendControl
will be visible to the user; the straightforward way to do this is to add it to the application's generic UI tree. For example:
@object GenPrimaryClass MyPrimary = {
GI_comp = ..., @MySendControl;
}
Finally, we're ready to declare the
MailboxSendControl
object itself:
Code Display 4-2 MailboxSendControl Object Ready for Fax
@object MailboxSendControlClass MySendControl = { GI_visMoniker = "Send"; GII_visibility = GIV_POPUP; GCI_output = process; MSCI_defBodyType = MOT_SELECTION;
ATTR_MAILBOX_SEND_CONTROL_SEND_SELECTION; ATTR_GEN_INIT_FILE_CATEGORY = "fax" ;
ATTR_MAILBOX_SEND_CONTROL_SINGLE_TRANSPORT = { {GMID_CELL_MODEM, MANUFACTURER_ID_GEOWORKS}, {GMTID_FAX_SEND, MANUFACTURER_ID_GEOWORKS},0};
ATTR_MAILBOX_SEND_CONTROL_TRANSPORT_HINT_OPTR = { {GMTID_FAX_SEND, MANUFACTURER_ID_GEOWORKS}, 0, @MyPrintControl}; }
(If your application is to run on the Nokia 9000i Communicator, use ComplexMonikerClass to give your
MailboxSendControl
the standard Nokia 9000i Communicator look and feel. In the example above, you would replace
@object MailboxSendControlClass MySendControl = { GI_visMoniker = "Send";
...with...
@object ComplexMonikerClass MySendControl = { ComplexMoniker = MailboxSendControlClass; CMI_topText = CMT_SELECT_RECEIVER;
HINT_SEEK_REPLY_BAR; /* make this button 0 */ HINT_SEEK_SLOT = 0;
)
ATTR_MAILBOX_SEND_CONTROL_TRANSPORT_HINT_OPTR
tells the
MailboxSendControl
that when it comes time to send a fax, it should look to the
MyPrintControl
object to provide the data. The FaxSendTD Mailbox transport driver knows how to interact with PrintControl objects; we will add code to our program to work with the PrintControl to draw our fax contents.
ATTR_GEN_INIT_FILE_CATEGORY tells the send control where to find the user's faxing preferences within the INI file--the "fax" category.
ATTR_MAILBOX_SEND_CONTROL_SINGLE_TRANSPORT
specifies that this
MailboxSendControl
only sends data by fax. To allow your application to send data in additional ways, get rid of this ATTR.
The
MailboxSendControl
would ask the user what data they wish to send: the current selection, current page, all pages. In most fax programs, we don't want to give the user that choice. In our example, we use the
ATTR_MAILBOX_SEND_CONTROL_SEND_SELECTION
vardata field to prevent the controller from presenting the user with this choice--the
MailboxSendControl
will always try to send the "current selection," though our program ignores any idea of selection.
We have configured the
MailboxSendControl
so that when the user has specified a recipient for the fax, the control will query a
PrintControl
object for the fax's contents.
Again, make sure the following line is in the application's .gp file:
library spool # Defines PrintControlClass
In the previous section, we saw that the
PrintControl
object needed to appear on certain GCN lists and in the
MailboxSendControl
's
ATTR_MAILBOX_SEND_CONTROL_TRANSPORT_HINT_OPTR
field. (See Adding the Fax Controls to the Proper GCN Lists
and MailboxSendControl Object Ready for Fax
.)
Assuming that the
PrintControl
won't be used for anything else, the following declaration will suffice:
@object PrintControlClass MyPrintControl = { GI_states = @default & ~GS_ENABLED; PCI_docNameOutput = process; PCI_output = process; }
Here we have turned off the GS_ENABLED flag because the
PrintControl
's UI will never appear in the application; it isn't part of the application's generic UI tree. (To include the PrintControl's UI in your application, leave it enabled, add it to the generic UI tree, and see the Printing chapter for more information.)
The
PCI_output
line specifies that the application's process object will be responsible for drawing the fax's contents. The
PCI_docNameOutput
line specifies that the application's process will be responsible for providing the fax's name.
The process object (or whatever object is specified in the
PrintControl
's
PCI_docNameOutput
field) must supply the fax's name when queried. (On the Nokia 9000i Communicator, this name is not especially important; this is just a required part of the
PrintControl
's API.) The name need not be unique.
To fulfill its responsibility, the object must handle
MSG_PRINT_GET_DOC_NAME
, responding by sending
MSG_PRINT_CONTROL_SET_DOC_NAME
. If the message is not handled in this manner, the fax will never be sent.
The following is an acceptable handler:
Code Display 4-3 Handling MSG_PRINT_CONTROL_SET_DOC_NAME for faxing
The printCtrlOD value is an argument to the message.
@method MyProcessClass, MSG_PRINT_GET_DOC_NAME { @send printCtrlOD::MSG_PRINT_CONTROL_SET_DOC_NAME("Good Morning"); }
The process object (or whatever object is specified in the
PrintControl
's
PCI_output
field) describes the fax's contents in the method for the imported message
MSG_PRINT_START_PRINTING
. It will receive this message after the user has specified a recipient for the fax. This message is defined:
void MSG_PRINT_START_PRINTING( \ optr printCtrlOD , \ GStateHandle gstate );
There are some things that the handler for this message must do:
GrNewPage()
to generate a form feed. (It should also call
GrNewPage()
between the pages of a multi-page fax, of course.)
PrintControl
MSG_PRINT_CONTROL_PRINTING_COMPLETED
.There are many things that the handler for this message may do. For information about some of them, see thePrinting chapter. (If you read that chapter, you might think it's important that the print job's page range is also determined; this is not important for faxing.)
The following example shows a handler that draws a fax's contents to contain some text and a rectangle:
Code Display 4-4 Handling MSG_PRINT_START_PRINTING when faxing
@method MyProcessClass, MSG_PRINT_START_PRINTING { /* We draw the contents of the fax. */ GrDrawText(gstate, 20,40, "Good Morning", 0); GrDrawRect(gstate, 10,30, 110,55);
/* Make sure that our last drawing command is a form-feed */ GrNewPage(gstate, PEC_FORM_FEED);
/* Let the PrintControl know we're done */ @send printCtrlOD::MSG_PRINT_CONTROL_PRINTING_COMPLETED(); }
In the example, we draw the fax's contents with a couple of kernel graphics commands. We might just have easily passed gstate as the graphic state argument to some Visible object's
MSG_VIS_DRAW
message (also passing the
DrawFlag
DF_PRINT).
We also need to tell the
PrintControl
how many pages we're printing. The first page that we draw on is page one. If there is a separate cover page, that will be page zero. To specify how many pages there are to print, we call MSG_PRINT_CONTROL_SET_SELECTED_PAGE_RANGE, and then MSG_PRINT_CONTROL_SET_SELECTED_PAGE_RANGE, passing the number of pages to print as that message's second argument.
It is possible that the fax cover page will appear on the same page on which drawing starts. To find out how much vertical space this cover page will take up on the first page, call the PrintControl with
MSG_PRINT_GET_FIRST_PAGE_OFFSET
; the return value will be the height of the cover page. (To properly follow naming conventions, this message should be called
MSG_PRINT_CONTROL_GET_FIRST_PAGE_OFFSET
; as of this writing it has not yet had its name fixed.)


Photo by Brian Vu
Interview & Text by Caroline D’Arcy Gorman
I’ve been a fan of Vivek Shraya for years. Back in 2012, I attended one of her readings for God Loves Hair at Bluestockings bookstore in Manhattan. Then, I was taken with her powerful presence and intimate style. Meeting her four years later, I was anything but surprised to discover that she is as modest and kind in conversation as she is talented on stage. Up close, Vivek is magnetic; beautiful on the inside and out, alluring and open, she draws you to her without effort. Her fan base is perhaps not as big as it should be - “being a brown queer musician in the Canadian music industry is not an easy ambition” – but heavily loyal. Once you know about Vivek, it’s hard not to love her. Over the years, she has done it all: releasing 10 solo albums, 5 books, and 4 films, on top of touring with Grammy-nominated duo Tegan and Sara. Fascination with music as a form of expression started early on for Vivek. While she admits that “most narratives around queerness and religion are two things that cannot coexist - they’re like oil and water”- her religion allowed her to express her femininity in a way that was accepted. In school, Vivek was being read as ‘abnormal,’ whereas in a Hindu religious space, the opposite. “All the stereotypes of ‘feminine boys’ are very normal in Hindu masculinity. I think a big part of why I turned to music was because it allowed me to try to connect with God.”
2016 has been a big year for Vivek. On February 15th, her 35th birthday, Vivek publicly announced that she was now using the pronouns “she, her, hers.” She simultaneously released her single, “Girl It’s Your Time,” donating all of the proceeds to a trans and genderqueer support group in Toronto. “The response was just so overwhelming, I felt like it was maybe the first birthday I’ve ever had.” Working solo for the majority of her career, Vivek recently started Too Attached, a pop duo with her brother, Shamik. She says that their personal relationship, which had otherwise been tumultuous, has turned into a supportive and collaborative kinship, infused with the beauty of rediscovering one another through music, a place of earlier connection. The new project also served as an opportunity to create a fresh slate for the siblings’ respective music careers. Canadian born and bred, Vivek recalls that she “flat out had several people say to me you’ll never get by in Canada as a brown artist. I look around and 15 years later, that hasn’t changed much.” Despite the setbacks that she has faced, Vivek remains a positive force and source of light, coming across wildly modest considering her achievements in every art field. On top of releasing new music, she has published The Boy and The Bindi, a children’s book, opening herself up to a younger crowd with brave strides. There is no denying that Vivek Shraya is stunningly prolific, working in every format imaginable. Admittedly, taking breaks is not her strong suit: “I was just having a conversation with a friend about high functioning depressive personality types; when most people think of depression or anxiety, they think of a loss of energy, but I navigate my mental health in the opposite way. My depression involves me being super, super productive as a way to not have to stop and think about the meaning of life and then realize there is none.” She laughs.
Vivek had been exploring the pronouns “she” and “her” with friends for a good six months, but wrestled with coming out publicly. “I’m already brown and I’m already queer, now I’m adding trans to it. Will I alienate audiences, people who I’ve spent years trying to build a relationship with through my art?” She forged ahead regardless of anxieties, and was met with a whole lot of love. When I ask what the most touching response is that she’s received, she pauses – “I get emotional even just saying it now.” It was a message from the trans support group, Supporting Our Youth. It read: “Thank you so much, you give those of us on the margins courage to come forward”. But does Vivek consider herself an activist? It’s complicated. “When you embody marginalized identities and you speak of them, you’re sort of immediately seen as an activist. I worry about falling short.” Objectively, Vivek views art as “a powerful form of activism”, but shies away from claiming the term - “not because I’m ashamed of it but because I have so much respect for people I know who are using their bodies to stop traffic. As vulnerable as it is to make art, when I think about the safeties I’ve had, I don’t know that I ever put myself on the line as much. Sometimes I feel like an accidental activist.” But intentionally or accidentally, Vivek can’t take away from the fact that she has inspired thousands across the world. And she recognizes that this is beautiful thing. “As my career has grown I definitely feel a responsibility to use my small platform to address issues that I feel passionate about and address injustices that I see, which is definitely a form of activism. I think it’s a strange intersection.”
Navigating the art world, which is inherently catered towards white cisgendered men, is difficult. The boxes and labels placed on Vivek’s books, just because of her identities, imply a certain ‘otherness’ about them. “My books are not seen as just books, they’re seen as LGBT books. In some cases it’s fair – for someone to say that Even this Page is White is about race… I mean of course, that’s definitely what it’s about. But I think I bought into this idea that the only people who would like that book would be LGBT or brown. There was this straight white woman [at one of the readings] who told me how she connected to the book for a totally different reason. I remember thinking - wow, of course literature reaches a wide range of people, it’s only in this culture where the dominant is seen as the norm.”
Vivek’s projects are largely personal and political; music, however, not as much. “I’ve often felt like I had to hide parts of myself, so it’s been exciting to turn to music with the same sort of openness.” And this newfound openness is not only exciting for Vivek, but also for her listeners.  I’m never going to hide you, I’m never going to fight you again”, she sings over a minimalistic bass line. Vivek is joined by a choir of her own voices - high and low - with a delicate but steadfast strength.Social media as an artist is often a necessary part of marketing, but Vivek, like many others, harbors a love-hate relationship with it. “Sometimes I feel like I’m constantly processing other people’s emotions. Especially when [the] Orlando [nightclub shooting] happened, it was really powerful to have this collective grief but it was also hard. Every time I opened social media someone was expressing another sentiment and I was reliving it all over again. Obviously I’m still in a privileged position, but sometimes with social media it’s hard to draw the line between your feelings, thoughts, and emotions, and someone else’s.
When I mention that the images I’ve seen relating to the new music are different from previous ones, Vivek laughs. “I had people say: ‘I googled you recently and there are mostly super ‘masc.’ pictures of you with a beard!’ With "Girl It’s Your Time" I wanted the artwork to express femininity, but also be complicated: my legs are still hairy, I still wanted it to look like me and not like I am Caitlyn Jenner on the cover of Vanity Fair. There’s nothing wrong with that, but that’s Caitlyn’s story. I was trying to figure out what felt like my story.” And the process is continually evolving; much of Vivek’s work hits with a newfound poignancy. “I’ve had friends say to me that the ending of God Loves Hair feels like a trans narrative. I wasn’t identifying as trans at the time, so it’s exciting to think about the ways that on some subconscious level the art allowed me to be myself before I could be.”
What’s ahead for Vivek? The short answer: a lot. With The Boy and the Bindi, Vivek is already working towards a safer and more open-minded world through children’s literature. During a reading of the book, one of the kids asked Vivek why she was wearing nail polish. “I said, ‘I feel like anyone should be able to wear nail polish!’ I hadn’t come out in this context. (Laughs) This kid was like, ‘Yeah that makes sense!’ Kids are so much more receptive to difference. So much of my adult life has been spent trying to have conversations about difference with other adults; I’m excited about being able to have this conversation through The Boy and the Bindi with children whose minds are maybe a little bit more open to thinking about these things.”
While she is extremely open in her art, Vivek harbors a small group of friends, of whom she is “very selective and protective”. The queer music duo Tegan and Sara are counted among Vivek’s close friends – they met in 2005 after Vivek threw one of her CDs on stage, nearly hitting Tegan in the head. And though she is a self-described introvert, Vivek’s unconventional friending techniques go far back. “I would pay attention to what the popular girl was listening to and then I would go to the public library, take that New Kids On the Block CD out, learn that song, and then accidentally sing it around her and then she’d say, “You know that song!” and then we’d become BFFs. It sounds very devious but I think as a queer kid I understood that my safety would be with girls, so it was really about strategically using my voice to build safety for myself.” She laughs. “Manipulative but smart.” There are so few artists out there as honest, selfless, and genuine as Vivek Shraya. And perhaps, we have New Kids on the Block to thank for this incredible artist... Vivek, it’s your time.


20+ Photos You Probably Won’t Find Even in the Hugest Encyclopedias
Internet users often share photos that can satisfy the curiosity of anyone that has asked themselves the question, “What would happen if...?” For example, what will happen if you leave an onion in the trunk of your car for a few months? Or what would happen if you wear the same T-shirt every time you mow the lawn?
We at Bright Side have been able to find the answers to these and some other interesting questions.
1. A chunk of dirt that was struck by lightning and turned to glass
2. When a tree stays in a plastic pot for too long:
Sadly, it died a few years after planting.
3. Left a candle outside. It collected rainwater which sank to the bottom after the wax was melted by the sun.
4. “How the smoke from our fire pit colored these spiderwebs black”
The soot ended up on the webs.
5. Paw prints from 2 cats who always use the same path to cross the lawn
These cats always use the same itinerary.
6. This book, published in 1787, is being devoured by Curculionidae larvae, commonly known as bookworms.
7. I rehydrated a raisin by leaving it in hot water overnight!
8. “The toner cartridge said DO NOT TILT. I did tilt. You can see where I was standing on the right.”
9. This is what happens when you wear the same shirt every day
“My grandpa mows the yard every week with the same grey shirt that has Yamaha written on the back in black letters. My grandma just noticed this last week.”
10. This is why you wear a helmet. It will take all the heat.
11. “The way my pen bent after being left in a hot car”
12. “Left an unopened can of soda in my car, it was so hot that it exploded. Everything is sticky now.”
13. “My sparkling water bottle was pretty close to exploding after being left in a hot car for the day.”
14. This onion that was accidentally left in a car trunk for 4 months
15. The way this tree grew to swallow a sign
16. This rug is so well worn it’s almost invisible.
That place is in Tallinn, Estonia. And this rug (according to the legend) has been in one of the streets since 1937.
17. A cat has been using this scratcher for many years.
18. This is what happens to a leaf when it is eaten by Tenthredinidae.
19. “This is what happens if you play with a yo-yo too much (I’m not kidding this is the hand of a professional yo-yo player).”
The X-ray shows that the blood circulation in the pointer finger has been disrupted. By the way, this is Dave Schulte’s hand, who is a professional yo-yo player.
20. This is what happens when you forget about your pizza for 8 hours.
21. “I left the deep freezer door slightly cracked by accident and didn’t use it for a few months. I was rewarded with this a few days before moving out.”
22. The way these blood drops formed in the sand, looks like the red blood cells that make them up.
Have you ever seen anything as amazing as the things from this article? Tell us in the comment section below!
Preview photo credit SadTension5 / reddit


EventController
struct EventController : RouteCollection
extension EventController: ContentFilterable
extension EventController: UserBookmarkable
extension EventController: UserTaggable
The collection of /api/v3/events/*
route endpoints and handler functions related
to the event schedule.
-
Required. Registers routes to the incoming router.
Declaration
Swift
func boot(router: Router) throws
-
GET /api/v3/events
Retrieve entire event schedule.
Declaration
Swift
func eventsHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all events. -
GET /api/v3/events/match/STRING
Retrieve all events whose title or description contain the specfied string.
Declaration
Swift
func eventsMatchHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all matching events. -
GET /api/v3/events/now
Retrieve all events happening now.
Declaration
Swift
func eventsNowHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all current events. -
GET /api/v3/events/today
Retrieve all events for the current day.
Declaration
Swift
func eventsTodayHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all events for the current day. -
GET /api/v3/events/official
Retrieve all official events on the schedule.
Declaration
Swift
func officialHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all official events. -
GET /api/v3/events/official/now
Retrieve all official events happening now.
Declaration
Swift
func officialNowHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all current official events. -
GET /api/v3/events/official/today
Retrieve all official events for the current day.
Declaration
Swift
func officialTodayHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all official events for the current day. -
GET /api/v3/events/shadow
Retrieve all shadow events on the schedule.
Declaration
Swift
func shadowHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all shadow events. -
GET /api/v3/events/shadow/now
Retrieve all shadow events happening now.
Declaration
Swift
func shadowNowHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all current shadow events. -
GET /api/v3/events/shadow/today
Retrieve all shadow events for the current day.
Declaration
Swift
func shadowTodayHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing all shadow events for the current day.
-
GET /api/v3/events/ID/forum
Retrieve the
Forum
associated with anEvent
, with all itsForumPost
s. Content from blocked or muted users, or containing user’s muteWords, is not returned.Throws
A 5xx response should be reported as a likely bug, please and thank you.Declaration
Swift
func eventForumHandler(_ req: Request) throws -> Future<ForumData>
Parameters
req
The incoming
Request
, provided automatically.Return Value
ForumData
containing the forum’s metadata and all posts.
-
POST /api/v3/events/update
Updates the
Event
database from an.ics
file.Requires
EventUpdateData
payload in the HTTP body.Throws
403 Forbidden if the user is not an admin.Declaration
Swift
func eventsUpdateHandler(_ req: Request, data: EventsUpdateData) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.data
EventUpdateData
containing an updated event schedule.Return Value
[EventData]
containing the events that were updated or added. -
POST /api/v3/events/ID/favorite
Add the specified
Event
to the user’s tagged events list.Declaration
Swift
func favoriteAddHandler(_ req: Request) throws -> Future<HTTPStatus>
Parameters
req
The incoming
Request
, provided automatically.Return Value
201 Created on success.
-
POST /api/v3/events/ID/favorite/remove
Remove the specified
Event
from the user’s tagged events list.Throws
400 error if the event was not favorited.Declaration
Swift
func favoriteRemoveHandler(_ req: Request) throws -> Future<HTTPStatus>
Parameters
req
The incoming
Request
, provided automatically.Return Value
204 No Content on success.
-
GET /api/v3/events/favorites
Retrieve the
Event
s in the user’s taggedEvent barrel, sorted by.startTime
.Declaration
Swift
func favoritesHandler(_ req: Request) throws -> Future<[EventData]>
Parameters
req
The incoming
Request
, provided automatically.Return Value
[EventData]
containing the user’s favorited events. -
The barrel type for event
ForumPost
bookmarking.Declaration
Swift
var bookmarkBarrelType: BarrelType { get }
-
The barrel type for
Event
favoriting.Declaration
Swift
var favoriteBarrelType: BarrelType { get }


| 1 | /* | |
| 2 | * Licensed to the Apache Software Foundation (ASF) under one or more | |
| 3 | * contributor license agreements. See the NOTICE file distributed with | |
| 4 | * this work for additional information regarding copyright ownership. | |
| 5 | * The ASF licenses this file to You under the Apache License, Version 2.0 | |
| 6 | * (the "License"); you may not use this file except in compliance with | |
| 7 | * the License. You may obtain a copy of the License at | |
| 8 | * | |
| 9 | * http://www.apache.org/licenses/LICENSE-2.0 | |
| 10 | * | |
| 11 | * Unless required by applicable law or agreed to in writing, software | |
| 12 | * distributed under the License is distributed on an "AS IS" BASIS, | |
| 13 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| 14 | * See the License for the specific language governing permissions and | |
| 15 | * limitations under the License. | |
| 16 | */ | |
| 17 | package org.apache.commons.imaging.formats.bmp.writers; | |
| 18 | ||
| 19 | import java.awt.image.BufferedImage; | |
| 20 | import java.io.ByteArrayOutputStream; | |
| 21 | import java.io.IOException; | |
| 22 | ||
| 23 | import org.apache.commons.imaging.common.BinaryOutputStream; | |
| 24 | import org.apache.commons.imaging.palette.SimplePalette; | |
| 25 | ||
| 26 | public class BmpWriterPalette extends BmpWriter { | |
| 27 | private final SimplePalette palette; | |
| 28 | private final int bitsPerSample; | |
| 29 | ||
| 30 | public BmpWriterPalette(final SimplePalette palette) { | |
| 31 | this.palette = palette; | |
| 32 | ||
| 33 |
2
1. 2. |
if (palette.length() <= 2) { |
| 34 | bitsPerSample = 1; | |
| 35 |
2
1. 2. |
} else if (palette.length() <= 16) { |
| 36 | bitsPerSample = 4; | |
| 37 | } else { | |
| 38 | bitsPerSample = 8; | |
| 39 | } | |
| 40 | } | |
| 41 | ||
| 42 | @Override | |
| 43 | public int getPaletteSize() { | |
| 44 |
1
1. getPaletteSize : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return palette.length(); |
| 45 | } | |
| 46 | ||
| 47 | @Override | |
| 48 | public int getBitsPerPixel() { | |
| 49 |
1
1. getBitsPerPixel : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return bitsPerSample; |
| 50 | } | |
| 51 | ||
| 52 | @Override | |
| 53 | public void writePalette(final BinaryOutputStream bos) throws IOException { | |
| 54 |
3
1. writePalette : changed conditional boundary → NO_COVERAGE 2. writePalette : Changed increment from 1 to -1 → NO_COVERAGE 3. writePalette : negated conditional → NO_COVERAGE |
for (int i = 0; i < palette.length(); i++) { |
| 55 | final int rgb = palette.getEntry(i); | |
| 56 | ||
| 57 |
2
1. writePalette : Replaced Shift Right with Shift Left → NO_COVERAGE 2. writePalette : Replaced bitwise AND with OR → NO_COVERAGE |
final int red = 0xff & (rgb >> 16); |
| 58 |
2
1. writePalette : Replaced Shift Right with Shift Left → NO_COVERAGE 2. writePalette : Replaced bitwise AND with OR → NO_COVERAGE |
final int green = 0xff & (rgb >> 8); |
| 59 |
2
1. writePalette : Replaced Shift Right with Shift Left → NO_COVERAGE 2. writePalette : Replaced bitwise AND with OR → NO_COVERAGE |
final int blue = 0xff & (rgb >> 0); |
| 60 | ||
| 61 |
1
1. writePalette : removed call to org/apache/commons/imaging/common/BinaryOutputStream::write → NO_COVERAGE |
bos.write(blue); |
| 62 |
1
1. writePalette : removed call to org/apache/commons/imaging/common/BinaryOutputStream::write → NO_COVERAGE |
bos.write(green); |
| 63 |
1
1. writePalette : removed call to org/apache/commons/imaging/common/BinaryOutputStream::write → NO_COVERAGE |
bos.write(red); |
| 64 |
1
1. writePalette : removed call to org/apache/commons/imaging/common/BinaryOutputStream::write → NO_COVERAGE |
bos.write(0); |
| 65 | } | |
| 66 | } | |
| 67 | ||
| 68 | @Override | |
| 69 | public byte[] getImageData(final BufferedImage src) { | |
| 70 | final int width = src.getWidth(); | |
| 71 | final int height = src.getHeight(); | |
| 72 | ||
| 73 | final ByteArrayOutputStream baos = new ByteArrayOutputStream(); | |
| 74 | ||
| 75 | int bit_cache = 0; | |
| 76 | int bits_in_cache = 0; | |
| 77 | ||
| 78 | int bytecount = 0; | |
| 79 |
4
1. getImageData : changed conditional boundary → NO_COVERAGE 2. getImageData : Changed increment from -1 to 1 → NO_COVERAGE 3. getImageData : Replaced integer subtraction with addition → NO_COVERAGE 4. getImageData : negated conditional → NO_COVERAGE |
for (int y = height - 1; y >= 0; y--) { |
| 80 |
3
1. getImageData : changed conditional boundary → NO_COVERAGE 2. getImageData : Changed increment from 1 to -1 → NO_COVERAGE 3. getImageData : negated conditional → NO_COVERAGE |
for (int x = 0; x < width; x++) { |
| 81 | final int argb = src.getRGB(x, y); | |
| 82 |
1
1. getImageData : Replaced bitwise AND with OR → NO_COVERAGE |
final int rgb = 0xffffff & argb; |
| 83 | ||
| 84 | final int index = palette.getPaletteIndex(rgb); | |
| 85 | ||
| 86 |
1
1. getImageData : negated conditional → NO_COVERAGE |
if (bitsPerSample == 8) { |
| 87 |
2
1. getImageData : Replaced bitwise AND with OR → NO_COVERAGE 2. getImageData : removed call to java/io/ByteArrayOutputStream::write → NO_COVERAGE |
baos.write(0xff & index); |
| 88 |
1
1. getImageData : Changed increment from 1 to -1 → NO_COVERAGE |
bytecount++; |
| 89 | } else { | |
| 90 | // 4 or 1 | |
| 91 |
2
1. getImageData : Replaced Shift Left with Shift Right → NO_COVERAGE 2. getImageData : Replaced bitwise OR with AND → NO_COVERAGE |
bit_cache = (bit_cache << bitsPerSample) | index; |
| 92 |
1
1. getImageData : Replaced integer addition with subtraction → NO_COVERAGE |
bits_in_cache += bitsPerSample; |
| 93 |
2
1. getImageData : changed conditional boundary → NO_COVERAGE 2. getImageData : negated conditional → NO_COVERAGE |
if (bits_in_cache >= 8) { |
| 94 |
2
1. getImageData : Replaced bitwise AND with OR → NO_COVERAGE 2. getImageData : removed call to java/io/ByteArrayOutputStream::write → NO_COVERAGE |
baos.write(0xff & bit_cache); |
| 95 |
1
1. getImageData : Changed increment from 1 to -1 → NO_COVERAGE |
bytecount++; |
| 96 | bit_cache = 0; | |
| 97 | bits_in_cache = 0; | |
| 98 | } | |
| 99 | } | |
| 100 | } | |
| 101 | ||
| 102 |
2
1. getImageData : changed conditional boundary → NO_COVERAGE 2. getImageData : negated conditional → NO_COVERAGE |
if (bits_in_cache > 0) { |
| 103 |
2
1. getImageData : Replaced integer subtraction with addition → NO_COVERAGE 2. getImageData : Replaced Shift Left with Shift Right → NO_COVERAGE |
bit_cache = (bit_cache << (8 - bits_in_cache)); |
| 104 | ||
| 105 |
2
1. getImageData : Replaced bitwise AND with OR → NO_COVERAGE 2. getImageData : removed call to java/io/ByteArrayOutputStream::write → NO_COVERAGE |
baos.write(0xff & bit_cache); |
| 106 |
1
1. getImageData : Changed increment from 1 to -1 → NO_COVERAGE |
bytecount++; |
| 107 | bit_cache = 0; | |
| 108 | bits_in_cache = 0; | |
| 109 | } | |
| 110 | ||
| 111 |
2
1. getImageData : Replaced integer modulus with multiplication → NO_COVERAGE 2. getImageData : negated conditional → NO_COVERAGE |
while ((bytecount % 4) != 0) { |
| 112 |
1
1. getImageData : removed call to java/io/ByteArrayOutputStream::write → NO_COVERAGE |
baos.write(0); |
| 113 |
1
1. getImageData : Changed increment from 1 to -1 → NO_COVERAGE |
bytecount++; |
| 114 | } | |
| 115 | } | |
| 116 | ||
| 117 |
1
1. getImageData : mutated return of Object value for org/apache/commons/imaging/formats/bmp/writers/BmpWriterPalette::getImageData to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return baos.toByteArray(); |
| 118 | } | |
| 119 | } | |
Mutations | ||
| 33 |
1.1 2.2 |
|
| 35 |
1.1 2.2 |
|
| 44 |
1.1 |
|
| 49 |
1.1 |
|
| 54 |
1.1 2.2 3.3 |
|
| 57 |
1.1 2.2 |
|
| 58 |
1.1 2.2 |
|
| 59 |
1.1 2.2 |
|
| 61 |
1.1 |
|
| 62 |
1.1 |
|
| 63 |
1.1 |
|
| 64 |
1.1 |
|
| 79 |
1.1 2.2 3.3 4.4 |
|
| 80 |
1.1 2.2 3.3 |
|
| 82 |
1.1 |
|
| 86 |
1.1 |
|
| 87 |
1.1 2.2 |
|
| 88 |
1.1 |
|
| 91 |
1.1 2.2 |
|
| 92 |
1.1 |
|
| 93 |
1.1 2.2 |
|
| 94 |
1.1 2.2 |
|
| 95 |
1.1 |
|
| 102 |
1.1 2.2 |
|
| 103 |
1.1 2.2 |
|
| 105 |
1.1 2.2 |
|
| 106 |
1.1 |
|
| 111 |
1.1 2.2 |
|
| 112 |
1.1 |
|
| 113 |
1.1 |
|
| 117 |
1.1 |


We sell metrics!
- unleash interactive eyeballs
- revolutionize seamless systems
- redefine intuitive systems
- mesh bleeding-edge relationships
- generate interactive channels
- architect best-of-breed applications
- benchmark dynamic channels
- generate viral solutions
- implement transparent relationships
- facilitate seamless applications
- unleash magnetic partnerships
- recontextualize bricks-and-clicks convergence
- revolutionize clicks-and-mortar platforms
- syndicate efficient vortals
- evolve next-generation users


html lang=" en">
< head>
< title> Blue Is The New Hue title>
< link rel=" stylesheet" href=" style.css" />
< meta charset=" utf-8" /> head>
< body>
< h1 style=" color: #079"> Blue Is The New Hue h1>
< p> European designers have just announced that
< span style=" color: #079"> Blue span> will be this year's hot color. p>
< p>
< a href=" index.html"> Return to home page a>
p>
body>
html>


mol: rdkit.Chem.rdchem.Mol
Molecule read from PDBQT
lines = filter(lambda x: x.startswith("ATOM"), block.split("\n"))
pdb_lines = []
for line in lines:
pdb_line = line[:56]
mol = Chem.MolFromPDBBlock("\n".join(pdb_lines), sanitize=False)
mol.SetProp("_Name", name)
for k, v in data.items():
mol.SetProp(str(k), str(v))
if removeHs:
mol = Chem.RemoveHs(mol, sanitize=sanitize)
elif sanitize:


|
Learn how to use the Oracle Cloud Access Security Broker (CASB) to extend the reach of your security policies beyond your own infrastructure with threat detection, predictive analytics, security configuration management, and automated incident response.
Watch Product Tour
|


「The Cats 猫咪」
Most of my intimate friends know that I am a super animal lover and have many fuzzy little animals in my family. My love for cats originally came from tabby cat which kept by my grandfather.
The memory about the tabby cat is very vague. My mother once said that the cat could not be touched by others, except me. It wouldn’t bite me even if I grabbed its tail and lift it up. Such an intelligent creature!
My mother and I both feed feral cats in recent years.
There are three cats living in our company’s garage, and sometimes there’re other cats outside the yard would come to eat. They will eat much more when they breed, especially in cold winter. Last winter, the hungry mother cat ran to my office door and called me to feed her. I was shocked but also be touched by the great maternal love.
Unlike me, my mother feeds the feral cats with fish nuggets, which means she must go to the market to buy fresh fish almost every day. A few times later, the owner of the fish stall learned about this situation. Sometimes, they will sell the fish to my mother at a relatively lower price, and sometimes they will provide some fish with no charge.
Going back home, my mother will wash and cook the fish pieces. 7 o ‘clock in the morning and 3 o ‘clock in the afternoon, the cats downstair will wait for my mother to feed them. If someone doesn’t show up for dinner for days, we will be very worried and look for them all over the subdistrict.
Recently, two mother cats gave birth to their babies at the same time，and the baby cats are super adorable!
Feral cats’ living condition doesn’t optimistic. They lack of food and shelter in most times. In the meanwhile, they suffer from diseases and sometime the injuries from human beings. All we can do now is to provide them with as much food as possible and to allow them to leave relatively gracefully when they die.
My mother and I have treated a number of feral cats with eyes and skin diseases, but we are not be able to deal with more complicated symptoms. We also tried to take the cats downstairs to the hospital for sterilization, while unfortunately, we did not succeed in capturing them…
To feral cats, still there’re something we can do. Please show them more kindness if it is possible. For example, please give them some food in the cold winter, or provide them with enough clean water in the hot summer.
To remember those feral cats which once appeared in my life. R.I.P
「中文部分」
和我熟悉的朋友都很清楚，我是一个超级动物爱好者，家里也养了很多毛茸茸的小动物们。对毛孩子们的喜欢，最初来自爷爷养的一只狸花猫。
关于那只猫的记忆已经很模糊，听妈妈说那只猫别人都碰不得，但是被我抓住尾巴提起来都不会咬我。妈妈说，通灵性的小动物是不会欺负老人和孩子的。最后那只猫去了哪里不得而知，他的离开让幼年的我学会了「离别」两个字，也开始了我和猫的不解之缘。
我不确定是妈妈影响了我还是我影响了妈妈，我们俩都在喂养流浪猫们。
我公司车库里常住着三只大猫，两只花的和一只黑白相间的，偶尔还会来一些小客人们。在繁殖下一代的时候，他们的食量会变得非常大，尤其是在冬天。去年最冷的时候，饥饿的猫妈妈跑到我的办公室门口喊我，我在震惊之余也不经感叹母爱的伟大。
我妈妈的工作，则更为忙碌一些。不同于我使用的猫粮，妈妈主要喂他们鱼块，这就意味着她差不多每天都要去鱼摊那里买鱼。几次以后鱼摊的老板都知道了这件事，有时候会以相对低廉的价格卖给她，随机还会送上一些别的鱼。
回家以后，妈妈要把这些鱼块清洗并且煮熟。早上七点和下午三点是家里楼下的毛孩子们吃饭的时间，妈妈说他们很早就会蹲在那里等着。如果有谁连着几天没有来吃饭的话，我们会在小区里面到处找他们。
最近家里楼下的两只猫妈妈同时生了宝宝，看着那些毛茸茸的小家伙们，实在是太可爱啦！
野猫们的生存环境其实并不乐观，缺乏食物、住所、疾病、人为驱赶和伤害…我们目前能做的只是尽可能提供给他们足够的食物，以及在他们去世的时候让他们相对体面的离开。
我和妈妈曾经治疗了一些有眼疾和皮肤病的毛孩子们，但是更多复杂的病症并不是我们可以处理的。我们也曾经尝试着想带着楼下的猫咪们去医院做绝育手术，但是很无奈，我们并没有成功把他们捉起来…
对于流浪猫们，我们能做的很有限…但如果可以的话，请给他们多一点儿的善意，比如在寒冷的冬天为他们提供一些食物，或者在炎热的夏天为他们提供干净的水源 :D
谨以此文纪念我生命中那些逝去的流浪猫们，R.I.P
（未完待续）
本文首发于Steemit。谢谢大家的来看我的文章，如果您喜欢的话，请转发、留言或是点赞。你们的支持是我继续努力的最大动力，再次感谢～
Thank you for reading my articles. If you like me, plz forward, upvote me or leave your comments. Thx a looooooot~
This page is synchronized from the post: ‘「Life & Activities」给我最挚爱的朋友们的情书💌-1 / A Love Letter to My Dearest Friends #1 20190520’


iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
editors picks
technology
travel
Cryptocurrency
Videos
View AlliPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
Worldwide
View AlliPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...
iPrice Group report offers insights on daily e-commerce activity in the ...


Pony Mail supports many ways of importing your old mail archives via the
import-mbox.py
script. For command line argument tips, run python3
import-mbox.py --help
.
Imports are digested equally every time (*), so you can import from the same source multiple times without creating duplicate emails in the archive. Both the archiver and the importer use the same digest method, so they can overlap. Usually, you'll want to set up the archiver first, and when emails start flowing through it, you'll use the importer to import older emails.
Pony Mail relies on the mail headers to determine the correct list name for each email.
If in any doubt, import a single list at a time and use the --lid flag to specify the correct list name.
Provided you have the main mod_mbox page at https://your.tld/mod_mbox/ and your (sub)domain resources at https://your.tld/mod_mbox/$list-yourdomain/, you can import all lists from that domain using:
python3 import-mbox.py --source https://your.tld/mod_mbox/ --mod-mbox --project yourdomain
For a quick update, which only imports the last 2 months of mail, append the --quick
flag.
You can also import just a single list by specifying that list ID:
python3 import-mbox.py --source https://your.tld/mod_mbox/ --mod-mbox --project listname-yourdomain
To import an entire site, use the same command as above, but omit the --project
flag
python3 import-mbox.py --source https://your.tld/mod_mbox/ --mod-mbox
If your old archive varies in terms of list IDs across time, you can force harmonization by using the --lid
or --domain
flags:
python3 import-mbox.py --source https://your.tld/mod_mbox/ --mod-mbox --project listid-yourdomain --lid "<listid.yourdomain.tld>"
This should only be done one list at a time.
To import from pipermail, you will have to run the import one list at a time. As with mod_mbox imports, you must specify a source, but use --pipermail
instead of --mod-mbox
:
python3 import-mbox.py --source https://your.tld/pipermail/foolist/ --pipermail
While you can convert HTML-only emails to text using --html2text
, Pipermail has some peculiarities
where it adds a text/plain message to these emails, thus preventing html2text from working. You can
circumvent this by using the --ignorebody "foo"
arg to ignore all text/plain bodies containing foo
.
While the project
flag is not needed here, you may wish to specify the list ID for the import.
To import from one or more local mbox files, specify a filesystem path as the source:
python3 import-mbox.py --source /tmp/mylists/
This will recursively import all files with the extension '.mbox'.
You can change the extension as follows:
python3 import-mbox.py --source /tmp/mylists/ --ext .mbx
To match all files with any non-empty extension:
python3 import-mbox.py --source /tmp/mylists/ --ext '.*'
To match files regardless of extension:
python3 import-mbox.py --source /tmp/mylists/ --ext ''
Or you can import a single file:
python3 import-mbox.py --source 2016-11.mbox
(This is supported in versions after 0.9)
We have a few test archives for those that wish to test large imports. They can be found in gzip format at http://ponymail.info/mboxes/
(*) The digest depends on the [archiver] generator setting in ponymail.cfg If that varies between imports, then duplicates will occur
Apache Pony Mail (Incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.


EOMUK
When it’s cold outside, skewered eomuk (??) simmered in a light savory broth is hugely popular at street food carts and stalls in Korea. Eomuk (aka odeng, ??) is processed fish cake made with pureed fish and other ingredients. It’s a common ingredient used in various Korean dishes such as gimbap and eomuk bokkeum.
The street version of eomuk guk (soup) is conveniently served on long skewers with the hot broth served separately in a cup. At home, eomuk guk can be prepared without skewers as an easy everyday soup! This dish originates from the iconic Japanese dish called “oden” which is a stew made with fish cakes and many other delicacies.
The Korean version is much simpler, made mostly with fish cakes and radish. Oddly enough, Koreans call fish cakes “odeng” not the dish itself.
As mentioned in my eomuk bokkeum, Busan, a southern coastal city, is most famous for delicious eomuk. Outside Korea, you can find fish cakes made in Busan in the frozen section of Korean markets. Eomuk comes in many shapes and sizes. You can use any type for this recipe. I like to use a combination of different types for varying shapes and textures. Simply cut them into bite sizes if necessary. A simple anchovy broth is all you need for this soup.You can of course use more complex broth if you like. See my How to Make Anchovy Stock for options. But, let me tell you my secret ingredient — a dried or fresh hot chili pepper when making the broth. It’ll make the broth taste really good, giving a subtle spicy kick to the broth while reducing that oily taste of the fish cakes.


{{ define "main" }}
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.
It is a long established fact that a reader will be distracted by the readable content of a page when looking at its layout. The point of using Lorem Ipsum is that it has a more-or-less normal distribution of letters, as opposed to using 'Content here, content here', making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text.
There are many variations of passages of Lorem Ipsum available, but the majority have suffered alteration in some form, by injected humour, or randomised words which don't look even slightly believable. If you are going to use a passage of Lorem Ipsum, you need to be sure there isn't anything embarrassing hidden in the middle of text.
Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et.
Hotel Name
Lunch Venue
Dinner Venue
Travel Hub City: Delhi
Base City: Jalandhar
Departure Spice Jet (SG105 0500-1420)
Arrival Spice Jet (SG105 0500-1420)
| Country | Status | Expected Date |
|---|---|---|
| Indonesia Visa | Applied | 10th May 18 |
| UK Visa | To be applied | 13th May 18 |
Name of Traveller
Phone Number
Email ID
Special Request
Non Vegetarian Food
Food, Club, Travel, Adventure, etc.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum laoreet, nunc eget laoreet sagittis, quam ligula sodales orci, congue imperdiet eros tortor ac lectus. Duis eget nisl orci. Aliquam mattis purus non mauris blandit id luctus felis convallis. Integer varius egestas vestibulum. Nullam a dolor arcu, ac tempor elit. Donec.Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum laoreet, nunc eget laoreet sagittis, quam ligula sodales orci, congue imperdiet eros tortor ac lectus. Duis eget nisl orci. Aliquam mattis purus non mauris blandit id luctus felis convallis. Integer varius egestas vestibulum. Nullam a dolor arcu, ac tempor elit. Donec.


Today we will take a look at inheritance, one of the four major principles of object oriented programming. Inheritance is used to crate new class based on existing one, which means reuse of properties and method from parent class. It’s important to mention that C# does not support multiple inheritance of classes, but it does support inheritance of multiple interfaces. In c# you can crate chains of connections by inheriting from parent class that inherits from another parent class, this way you can keep properties from multiple classes.
Inheritance is marked by colon( “ : “ ) in the new class declaration, between the name of child class and name of the parent class
class <child_class> : <parent_class> { //class body }
Lets take a look at example of simple implementation
using System; namespace InheritanceApplication { //Parent Class class Shape { //Values of parent class should be protected //so it can not be overriten in child class protected int side; public void setBase(int a) { side = a; } } // Child class class Square : Shape { public int getArea() { return (side * side); } } class MainClass { static void Main(string[] args) { Square Box = new Square(); //Method from parent class Box.setBase(5); //Method from child class Box.getArea(); // Print the area of the square. Console.WriteLine("Total area: " + Box.getArea()); Console.ReadKey(); } } }
We can see that we can use methods from both classes. We used the protected keyword because the accessibility of a member in the child class depends upon its declared accessibility in the parent class.
Creating child class is useful when we want to extend functionality of existing class without changing it(part of SOLID design). Child class can overwrite the methods from parent class, by rewriting the method declaration. But this is part of another key principle of oop called Polymorphism. We will take a look on this in next post. Stay Awesome!
.


Open positions
Undergraduate Student Research
We are looking for highly motivated and quantitatively-minded undergraduate students to work on a research project developing computational approaches to accelerate drug-/vaccine-target discovery against infectious diseases. Currently, we prefer students coming in with fellowships/scholarships (e.g., SROP, ENSURE, other department/college-level awards).
We are happy to train them in many aspects of data-intensive biology. A keen interest in bioinformatics, computational biology, statistics/biostatistics, computer science, genetics, or related fields, and prior programming experience in R, Python, Perl, and/or C/C++ would be a huge plus. As part of this project, they will have the opportunity to work closely with a senior scientist and learn to: a) work with large datasets, b) write structured, well-documented code to analyze, integrate, and visualize these datasets, c) interpret the results in the context of pathogenesis, and d) communicate the results in the form of a paper and presentation.
We have high expectations for their level of commitment to research, and we are keen on incorporating their contributions into co-authored papers in conferences/journals. As an undergraduate student, if you are interested in discussing research opportunities, please send me an email to set up a time to talk.
Graduate Student Research
We are looking for a highly motivated Masters student who is looking to do an internship or a long-term project (6mo–1yr) in developing computational approaches to accelerate drug-/vaccine-target discovery against infectious diseases. You will be a perfect fit if you have a background in bioinformatics, computational biology, statistics/biostatistics, computer science, genetics, or related fields. Having programming experience in R, Python, Perl, and/or C/C++ is a huge plus. In addition to these technical qualifications, we are looking for someone who can work well in a team, work hard, and give/take constructive feedback.
This research experience will give you the opportunity to i) use data analysis and visualization to address key biological questions as pertaining to molecular evolution, diagnosis, and treatment (using R), ii) present at group meetings, journals, technical workshops and conferences, iii) develop high coding standards for writing efficient, clear, well-documented, version-controlled code, iv) equip yourself professional for your next career step.
Start a conversation Please send me your latest CV and a cover letter that includes i) a summary of your academic/work experience, ii) description of relevant coursework, research experience (incl. publications, conference talks/posters), iii) a brief note on familiarity in the field of phylogenetics, molecular evolution, and comparative pathogenomics, iv) coding experience, if any. If you are already at MSU, please email me to set a time to meet and discuss your interest.
Visiting Scientist
We welcome visiting scientists to come and collaborate with us for a short period (summer/6mo). If you have a burning question or an interesting idea that is directly related to or complements our research project(s), we would be glad to share our space, experience, and resources with you to develop your project and execute it. Having your own funding would be the easiest way to make this happen. There are some funding sources that you can apply to (e.g., CoB). Please send me an email to discuss this opportunity.
Collaboration
If you are interested in any of our specific areas of research or have other great ideas that we could work on together, email me right away!


BATMAN AND ROBIN
A film review by Chris Casino
* out of **** (Don't say I didn't warn you)
Cast: George Clooney, Chris O'Donnell, Alicia Silverstone, Arnold Schwarzenegger, Uma Thurman, Michael Gough, Pat Hingle, Elle Macpherson, Vivica Fox, Vendella. Directed by Joel Schumaccer, Written by Akiva Goldsmith.
I want to be involved in show business one day. And I refuse to do any sequels to any movie I may make because I believe they only get worse. This movie proves it for me.
I was a little worried about the last BATMAN film, as I thought Joel Schumaccer, taking over from Tim Burton, would screw it up. I also assumed Val Kilmer would screw up as Bruce Wayne. They didn't. Kilmer did a good job, and the cast was left to carry the movie, which they did (even Jim Carrey as the Riddler and I can't stand Jim Carrey), because Schumaccer messed up the direction with his glitzy Gotham and his awkward camera angles. This film is different. The cast is still impressive, but here, not only does Schumaccer mess up with the direction (he's one of those directors who's good with actors, terrible with camera angles), but writer Akiva Goldsmith doesn't really give an impressive cast anything to do.
The cast is impressive: Clooney is a surprisingly good Wayne/Batman, O'Donnell is a crafty Robin as usual, They could've casted somebody better as Batgirl (my friend likes Neve Campbell), but Silverstone is not bad, and Thurman is a good Poison Ivy.
The major problem is Schwarzenegger, who is a terrible Freeze.  That's the trouble with me, *I* notice. Schwarzenegger does not deserve billing over Clooney, or as much money as he got for this, but Hollywood thinks he does.
Patrick Stewart was the person I'd heard that was considered to play Freeze, and he would've been so much better. Or Sean Connery, but not Arnold "I'm not an actor, but I play one in real life" Schwarzenegger. I realize that you must be a star to play a major role in a BATMAN film, but it would've been nice if they'd casted a star that had talent for the role.
Akiva Goldsmith's screenplay avoids some stuff that happens in a normal Batman film. In a regular Batman film, they'd concentrate on the relationship with the girlfriend a little more, but Elle Macpherson's Julie Madison is so limited here that we never get a real sense of who she is.
There is talk of a fifth Batman movie. My interest to see it is low, but I hope it's better than this. If you don't want to waste your time, rent any of the other BATMAN movies from Blockbuster. Any other.
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


Former Rangers footballer has grave restored 125 years after he first signed for club
Rangers supporters and Larkhall residents turned out to mark the re-dedication service for Neilly Gibson.
by Shirley Bartynek, https://www.dailyrecord.co.uk/authors/shirley-bartynek/A former Rangers footballer has had his grave restored in Larkhall 125 years after he first signed for the club.
Rangers supporters and Larkhall residents turned out to mark the re-dedication service for Neilly Gibson.
Gibson began his football journey at Larkhall Thistle while combining his career as a miner.
He moved on to fellow junior team Royal Albert before entering the senior ranks as a `reserve’ with Third Lanark.
Failing to sign Gibson on full, professional terms was to prove a mistake for Thirds, however, as aged 21 in November 1884, he accepted an offer from then-manager William Wilton to join Rangers.
In 10 seasons at Rangers, Gibson won four league championships, three Scottish Cups, five Glasgow Cups and three Glasgow Charity Cups.
Of those successes, however, one stands out above all else, as Rangers won the title in 1898-99 by winning every single one of their league matches – a feat never since matched in Scottish football.
Larkhall man Dr Joel Leslie, who is currently writing a book on Rangers’ ‘Invincible’ team of 1898/99, discovered during his research, that Neilly Gibson died in 1947 and was laid to rest in an unmarked grave in Larkhall Cemetery.
With the support of Larkhall & District Rangers Supporters Club and the Rangers Graves Project, a gravestone was erected to honour the player, who also played 14 times for Scotland.
Joel gave a wonderful history of Neilly’s life, and Ian McColl from the Restoration of Rangers Graves Project and Bill Hastings from the Church of Scotland all spoke at the ceremony in Larkhall Cemetery, with four great grandsons of Neilly present to honour him.
Ian McColl said: “I had the honour and pleasure of attending the event to unveil a new stone on the plot of Rangers great Neilly Gibson at Larkhall Cemetery.
 The grave had lain unmarked since 1947. Gone but never forgotten.”


Indexed Manifests
The following manifests have been indexed and you can view the search information and stats:
Annotated Manifests
These manifests have been annotated but not indexed. You can download annotations but its not possible to see stats or use the IIIF Search API. To index one of these manifests upload the manifest here.


Inscripta can help you formulate and build high-quality AI solutions, which can be customized quickly for a variety of business domains. We bring to the table, years of experience in building and deploying real-world systems. Our depth in NLP, machine learning, and deep learning, combined with the many cutting-edge components we have built, ensures quick and effective AI prototyping and integration
We have extensive experience in opinion mining, semantic search, information extraction, summarization, etc. Our understanding of the nuances of different data sources (blogs, reviews, news, etc.) in various domains, helps us deliver higher accuracy than off-the-shelf tools
We have built components which can help you create conversational systems that stand out from run-of-the-mill bots. We can help you deploy chatbots for a variety of domains with intelligent conversational skills that can facilitate longer and more complex interactions
We have built deep learning-based solutions for various image processing problems. Our OCR solution combines state-of-the-art image recognition and NLP modules to generate high accuracy results
With a fine blend of advisory and hands-on consulting, we help companies with faster, clearer and more effective ideas
With a sharp focus on a few key technologies, we are able to provide you solutions based on the most recent research
With years of experience with practical real-world applications we bring with us a strong understanding of data, modeling and deployment issues
With years of experience in mentoring and hiring data scientists, we can help you build and upskill your in-house team
Having witnessed the way the landscape of problems and solutions has evolved over nearly two decades, we understand precisely how AI can have a deep impact on your business, and have the expertise to offer you pragmatic and effective ways to turn your ideas into reality.
If you are looking to use AI to transform your product, Inscripta can help you explore a few key ideas before you decide to take a deeper plunge. If you are in the process of setting up a data science team, Inscripta can complement your team with expertise in our focus areas to help you bootstrap models quickly. We would be happy to have a quick half-hour call to understand your needs.


This inspection reports when equality check is performed for specific classes like
StringBuilder
or StringBuffer
for which equals()
is not
redefined. Such call will not compare object contents and is equivalent to the reference
equality. If reference equality is intended, it's better to use ==
explicitly
to avoid confusion.
New in 2017.2


Psalms 89:12
The north and the south thou hast created them: Tabor and Hermon shall rejoice in thy name.


Changelog¶
- v2.0 (??? 2023)
Add tests with pandas.Series and pandas.DataFrame to (almost) all existing functions.
Remove from future imports from all
pyjams
main modules (not jams) and all tests.GUI dialog functions of module fgui only imported if Tkinter installed.
Support pandas.Series in argmin, argmax, and argsort.
Support pandas Series and DataFrame in closest and mad.
Bug in esat if multi-dimensional array: wrong array index.
Support pandas.Series and pandas.DataFrame in helper functions input2array and array2input.
Add pandas as requirement for
pyjams
.
- v1.32 (Jun 2023)
Merged old library JAMS (https://github.com/mcuntz/jams_python) as a subdirectory. Remove deprecated routines that are in the main part now. Remove unsupported routines.
- v1.31 (Jun 2023)
Set filename without suffix as default plot name in mcPlot.
Exit if initial population failed twice in sce.
Allow ncol=1 in color.get_cmap.
prepend and append keywords in mad.
Warn only if lb > ub, simply set mask if lb == ub in sce.
Add functions pack, unpack mimicking Fortran intrinsics.
- v1.30 (May 2023)
Replace plotly with hvplot in mcPlot.
Add unicode symbol degree u00B0, which gets replaced by ^circ if usetex==True in str2tex.
Do not escape % if not usetex in str2tex.
Make get_variable_definition public in ncio.
Correct docstring of strip keyword in fsread and xread.
Added filebase to helpers.
Exchanged functions and wrapper functions in readnetcdf.
- v1.29 (Jan 2023)
Added functions eair2rhair, rhair2eair, eair2vpd, vpd2eair, rhair2vpd, vpd2rhair, eair2shair, shair2eair, eair2mrair, mrair2eair, for conversions between partial pressure, relative humidity, and specific humidity of water vapour in air.
Renamed module esat to air_humidity.
Correct treating of undef if two arrays given in array2input helper function.
Updated all constants related to gases in const module for redefinition of SI units of 2019.
Renamed some constants in const for greater consistency.
Keyword only_use_pyjams_datetimes in num2date to be able to use all implemented methods of datetime class.
Allow also CF-calendars in datetime class.
Updated tests for sce.
- v1.28 (Jan 2023)
Add updatez and updatez_compressed to update arrays in a single file in numpy’s npz format.
Do not set color for missing data; only existed for sron palettes.
Add –dpi as a standard option in mcPlot.
Use mpl.colormaps[name] instead of mpl.colormaps.get_cmap(name) to replace mpl.cm.get_cmap(name) to work with matplotlib < v3.6.
- v1.27 (Dec 2022)
Assure 4-digit years and catch %04Y format errors on Windows in date2date and in datetime class.
Use assert_almost_equal for fractional days with microseconds in tests of datetime class
Changed matplotlib.cm.get_cmap to matplotlib.colormaps.get_cmap in color module and tests.
Skip test for float128 on Windows in ncio.
Python 3.6 might not be fully supported anymore.
Remove dependency to
partialwrap
for tests.Remove dependency to
partialwrap
for tests.Adding sce the Shuffled-Complex-Evolution algorithm for function minimization.
Adding ‘a wide variety of’ to
pyjams
key phrase.NA to NaN, i.e. R to Python convention in fsread.
- v1.26 (Jul 2022)
round_microseconds method for datetime class if dates are from non-microsecond precise origin.
Added return_arrays keyword in date2num.
calendar keyword takes precedence on calendar attribute of datetime objects in date2num.
Add left, bottom, top to standard layout options in mcPlot.
Documented as_cmap keyword of get_cmap.
Added means to calculate daily, monthly, yearly, etc. means.
Allow scalar input in num2date.
Renamed datetime.py to class_datetime.py.
- v1.25 (Jun 2022)
Allow negative dates in date2date.
Support of microseconds in date2date.
Assure that input2array gives no 0d-array.
More datetime tests and bug fixes for microseconds and has_year_zero.
Delete unnecessary HDF5 filters in variable definition in netcdfio for compatibility with netcdf4 > 1.6.0.
Reduce precision to 14 digits for tests of logistic2_offset.
Remove Python version 3.7 from CI but leave version 3.6 because of problems with netcdf4 for 3.7 on Windows.
- v1.24 (Jun 2022)
Removed documentation from Read the Docs and moved to Github Pages: https://mcuntz.github.io/pyjams/
More datetime tests and bug fixes.
- v1.23 (Jun 2022)
Added module datetime with class datetime that mimics cftime.datetime but for non-CF-conform calendars. It also adds the functions date2num and num2date for conversion between datetime objects or string representations and numerical times. It adds the convenience wrappers date2dec and dec2date for easier portability of older code using JAMS.
Allows more usage of helper functions input2array and array2input by allowing undef=None in and making it the default.
Make netCDF4 an requirement of
pyjams
.Use I/O type helpers in str2tex.
Use I/O type helpers in date2date.
Allow strings and string arrays in array2input and input2array.
Add kwargs mechanism to plot_save in mcPlot to pass arguments to save_file.
Add –transparent as a standard option in mcPlot.
- v1.22 (May 2022)
Added module ncio with netCDF4 functions to copy netcdf files while doing some transformations on variables and dimensions.
Added shape keyword to infonetcdf.
Assert that at least one of nc, snc, cname, or sname is given in call to xread.
Change from NCL amwg to pyjams amwg as the default color palette in mcPlot.
- v1.21 (Apr 2022)
Added pyjams_amwg color map.
Bandwidth h output of kernel_regression_h is scalar if one-dimensional.
undef=np.nan is default in helper functions array2input and input2array.
Array masked or set to undef only if shapes of array and input agree in array2input.
Output of kernel_regression now has the type of y and not x or xout.
get_color can get list of colors and not only single colors.
Register ufz colors only once with get_color.
Add print_colors to print known named colors to console.
- v1.20 (Apr 2022)
Add gridcellarea to calculate the area of grid cells on Earth in square metre.
Add kernel_regression and kernel_regression_h for multi-dimensional non-parametric kernel regression.
- v1.19 (Mar 2022)
Add infonetcdf and readnetcdf to get variables from or print information of a netcdf file.
Add get_color to get value of named colors known to Matplotlib.
Added named colors of the guidelines of the Helmholtz Centre for Environmental Research - UFZ, Leipzig, Germany.
- v1.18 (Mar 2022)
Use array2input and input2array in division, correcting bug with scalar input and getting rid of numpy geterr and seterr.
Enhanced array2input to take second input variable.
Added functions isundef in helper module to deal with NaN and Inf.
Added ‘order’ keyword to get_cmap.
Added functions array2input and input2array in new helper module to assure same input and output types. Use them in esat and alpha_equ_h2o. The helper module is not in __init__.py nor in the documentation (yet?).
Return numpy array if type(input)(output) fails for unknown iterable types in esat and alpha_equ_h2o.
- v1.17 (Jan 2022)
Always close open files in module fsread.
Set default fill_value to NaN for floats in module fsread.
Remove read_only mode for openpyxl in xread because closing is disabled in this case.
Change handling of return type to allow more (unspecific) iterable types such as pandas time series in esat and alpha_equ_h2o.
Added xread, xlsread, and xlsxread, reading numbers and strings from an Excel file into 2D float and string arrays.
- v1.16 (Jan 2022)
Added mad, median absolute deviation test.
- v1.15 (Jan 2022)
Added esat, giving saturation vapour pressure over water and ice.
Bug in alpha_equ_h2o in return type if list or tuple and undef.
- v1.14 (Jan 2022)
Added directory_from_gui, directories_from_gui, file_from_gui, and files_from_gui, GUI dialogs to choose directories and files using Tkinter.
Organize API reference documentation by categories.
More consistent docstrings across routines.
Bug in alpha_equ_h2o for scalar in/out.
- v1.13 (Dec 2021)
Added fsread, fread, and sread, reading numbers and strings from a file into 2D float and string arrays.
Changed order of color maps in printing and plotting.
Edited docstrings of color module to follow closer numpydoc.
- v1.12 (Dec 2021)
Added date2date, which converts date representations between different regional variants.
Change documentation to Alabaster theme with custom CSS file.
- v1.11 (Nov 2021)
Use text2plot in abc2plot and signature2plot.
Better handling of linebreaks in Matplotlib and LaTeX mode in str2tex.
Added text2plot, adding text onto a plot.
Added int2roman and roman2int, converting integer to and from Roman literals.
Combine abc2plot and signature2plot in one file text2plot.py.
Added abc2plot, adding a, B, iii), etc. onto a plot.
Added signature2plot, adding a copyright notice onto a plot.
Added ‘pyjams_color.pdf’ as reference to available colormaps.
- v1.10 (Nov 2021)
Added tests for color.
Added ‘pragma: no cover’ to plot and MPI sections of codes so that they are not included in coverage report.
Cleaned mcPlot docstrings.
Cleaned formats in all docstrings.
Added current colors of Paul Tol, i.e. sron color palettes.
- v1.9 (Nov 2021)
Add position, which positions arrays of subplots to be used with Matplotlib’s add_axes.
- v1.8 (Nov 2021)
Write standard output file of mcPlot into current folder.
Add str2tex, converting strings to LaTeX strings
Bug in masked array input to alpha_equ_h2o, needed to check masked array before ndarray because the former is also the latter.
Enhanced tests of alpha_equ_h2o, alpha_kin_h2o, fit_functions, argsort so that have 100% coverage.
Added color, a collection of color palettes and continuous color maps.
- v1.7 (Nov 2021)
- Add mcPlot, the standard plotting class of Matthias Cuntz.
It currently assumes that MyriadPro is installed for LaTeX if one wants to typeset with latex (-u, –usetex). For installing MyriadPro on macOS see https://github.com/mcuntz/setup_mac#myriad-pro This should be similar on Linux.
There are no tests for mcPlot yet.
- v1.6 (Nov 2021)
Avoid overflow warnings in alpha_equ_h2o.
Added alpha_kin_h2o, kinetic fractionation factors for molecular diffusion of water isotopologues.
- v1.5 (Oct 2021)
Added alpha_equ_h2o, isotopic fractionation between liquid water and vapour.
Added pyjams to conda-forge.
- v1.4 (Oct 2021)
Added division, divides arrays dealing with zero in denominator.
- v1.3 (Oct 2021)
Added argmax, argmin and argsort for array_like and Python iterables.
- v1.2 (Oct 2021)
Added closest, which searches the closest element in an array.
- v1.1.x (Oct 2021)
Minor updates fixing JSON format of Zenodo defaults file .zenodo.json, using a combination of the successful metadata of Zenodo of v1.0, which itself does not work as a template ;-( and the information given on https://developers.zenodo.org/.
- v1.1 (Oct 2021)
Use automatic versioning with setuptools_scm. Delete src/pyjams/version.py.
Edited zenodo defaults for new releases.
Updated DOI in all documentation.
Use __all__ in all __init__.py.
- v1.0 (Oct 2021)
Initial release on Github, PyPI, and Zenodo.
Copied routines from JAMS package https://github.com/mcuntz/jams_python, formatted docstrings in numpydoc format, made the code flake8 compatible, and added extensive tests. Routines in JAMS get DeprecationWarning.
Provide basic documentation.
Added tee, which mimics the Unix/Linux tee utility, i.e. prints arguments on screen and in a file.
Added module const, which provides physical, mathematical, computational, isotope, and material constants, such as Pi = 3.141592653589793238462643383279502884197.
Added module functions, which provides a variety of special functions, including common test functions for parameter estimations such as Rosenbrock and Griewank, test functions for parameter sensitivity analysis such as the Ishigami and Homma function, several forms of the logistic function and its first and second derivatives, and a variety of other functions together with robust and square cost functions to use with the scipy.optimize package.
Added morris_method.py for Morris’ Method with functions morris_sampling and elementary_effects to sample trajectories in parameter space and to calculate Elementary Effects from model output on trajectories.
Added screening.py for applying Morris’ Method on arbitrary functions, providing the function screening that samples trajectories with morris_sampling of morris_method.py, applies a function on these trajectories, and calculates Elementary Effects with function elementary_effects of morris_method.py. It also provides a wrapper function ee for screening.


|
Our Ref: Rmb#[RMBNO] Dear [STAFFNAME], This is to confirm that you have submitted a reimbursement. [STAFFACTION] This reimbursement must be approved by one of the following: [APPROVERS]
An email has been send to them with details of how to approve this reimbursement.
You can track the status of this reimbursement, from the Reimbursement section of the Agape website.
If you have any question about this reimbursement, please contact our accounts department on (0121) 683 5049. In Christ, |
| Registered in England No 949989. Registered office: 3 Temple Row West, Birmingham, B2 5NY. Registered charity in England & Wales No 258421. VAT No 200 1787 10. Agapé is a member of the Evangelical Alliance and Global Connections, and is part of Campus Crusade for Christ International. |


CIS Events
2012-13 Distinguished Speaker Series
The Department of Computer and Information Sciences proudly announces a special distinguished speaker series featuring prominent women in computer science.
Topics covered include programming for software defined networks, cloud computing and privacy and security. An informal question and answer session with the distinguished speaker will follow each lecture.
The series is co-sponsored by the department and the University of Delaware NSF-ADVANCE and PDI STEM initiatives. It is organized in part by the CISters (Women in Computer and Information Sciences) group and the WIE (Women in Engineering) program.
The speaker series is free and open to the public. For event information, call<PHONE_NUMBER>.
February 27, 2013
DILMA DA SILVA
Principal Engineer and Manager
Qualcomm Research
System Software for Cloud Computing
11:00AM-12:15PM
Trabant Movie/Lecture Theatre
March 14, 2013
JENNIFER REXFORD
Professor, Department of Computer Science
Princeton University
Frenetic: A Programming Language for Software Defined Networks
11:00AM-12:15PM
Trabant Movie/Lecture Theatre
April 22, 2013
ANNIE I. ANTON
Professor and Department Chair
School of Interactive Computing, Georgia Institute of Technology
Designing Software Systems that Comply with Privacy and Security Regulations
11:00AM-12:15PM
Trabant Movie/Lecture Theatre


class GetBlockResponse : FIOResponse
<init> |
GetBlockResponse() |
actionMroot |
val actionMroot: String? |
blockExtensions |
val blockExtensions: List<String>? |
blockNumber |
val blockNumber: BigInteger? |
confirmed |
val confirmed: BigInteger? |
headerExtensions |
val headerExtensions: List<String>? |
id |
val id: String? |
newProducers |
val newProducers: String? |
previous |
val previous: String? |
producer |
val producer: String? |
producerSignature |
val producerSignature: String? |
refBlockPrefix |
val refBlockPrefix: BigInteger? |
scheduleVersion |
val scheduleVersion: BigInteger? |
timestamp |
val timestamp: String? |
transactionMRoot |
val transactionMRoot: String? |
transactions |
val transactions: List<String>? |


This specifies an extensible reader syntax for
named value constructors. A reader prefix is followed by a tag
(an
identifier), and then expressions and literal text parameters. The tag
can be though of as a class name, and the expression and literal text are
arguments to an object constructor call. The reader translates
&tag{...}
to a list
($construct$:tag ...)
, where
$construct$:tag
is normally bound to a predefined
macro.
This propsal depends on SRFI-109 (extended string quasi-literals) (in spite of having a lower number). It also shares quite of bit of syntax with SRFI-107 (XML reader syntax).


This puzzle contains five altered Yu-Gi-Oh! cards. The card titles are all characters from the video game Persona 5, while the images depict characters from the third arc of the anime and manga series JoJo’s Bizarre Adventure. The rest of the card, which include the attribute, types, level, ATK/DEF, card number, and passcode, correspond with Yu-Gi-Oh! cards from the "Arcana Force" archetype (the card effect box has been left blank because some of the cards explicitly mention the "Arcana Force" archetype in their effects). After extracting all the information from the altered cards, we get these three sets:
| Card Title | Card Image | Card Base |
| Haru Okumura | Gray Fly | Arcana Force XVIII - The Moon |
| Makoto Niijima | Jean Pierre Polnareff | Arcana Force VI - The Lovers |
| Morgana | Jotaro Kujo | Arcana Force 0 - The Fool |
| Sojiro Sakura | Joseph Joestar | Arcana Force IV - The Emperor |
| Yusuke Kitagawa | Noriaki Kakyoin | Arcana Force I - The Magician |
These three sets all relate to the Major Arcana. The Persona 5 characters are associated with the arcana through the Confidant system*, the characters from the third arc of JoJo’s Bizarre Adventure have Stands associated with the arcana, and the Yu-Gi-Oh! cards are named after the major arcana. After converting everything to arcana:
| Persona 5 Arcana | JoJo Stand Arcana | Yu-Gi-Oh! Arcana |
| The Empress (III) | The Tower (XVI) | The Moon (XVIII) |
| The High Priestess (II) | The Chariot (VII) | The Lovers (VI) |
| The Magician (I) | The Star (XVII) | The Fool (0) |
| The Hierophant (V) | The Hermit (IX) | The Emperor (IV) |
| The Emperor (IV) | The Hierophant (V) | The Magician (I) |
We notice that the Persona 5 Arcana are the first five arcana, so we can use them to order the cards. However, the other two sets of arcana do not have an obvious use. We can now turn to the flavor text, which asks us to "perform fusion". Since we are told not to use Polymerization, Yu-Gi-Oh!’s card for performing fusion summons, we turn to the other two franchises referenced in this puzzle. Jojo’s Bizarre Adventure has no concept of combining Stands, while fusing Personas to create stronger ones is a core mechanic of the Persona series, so we look at Persona 5’s arcana fusion system.
This chart** gives us the output for the fusion of any two input arcana:
We can use the chart along with the two sets of unused arcana to get a set of five fused arcana. We convert the canonical numbers of these arcana to letters through A=1, B=2, etc. These letters can be rearranged based on the ordering from the first set of Persona 5 arcana in the card titles:
| JoJo Stand Arcana | Yu-Gi-Oh! Arcana | Fused Arcana | Extract |
| The Star (XVII) | The Fool (0) | The Magician (I) | A |
| The Chariot (VII) | The Lovers (VI) | Temperance (XIV) | N |
| The Tower (XVI) | The Moon (XVIII) | The Hermit (IX) | I |
| The Hierophant (V) | The Magician (I) | Death (XIII) | M |
| The Hermit (IX) | The Emperor (IV) | The Hierophant (V) | E |
The extracted letters spell out the answer, ANIME.
* I’d prefer to say that the Persona characters have Personas that are associated with the major arcana, but Sojiro does not have a Persona. The original version of this puzzle used Persona 3 characters instead, where the characters associated with the Magician, High Priestess, Empress, Emperor, and Hierophant did have Personas, but this version was scrapped after testsolving because Persona 3 supported triple arcana fusion, which could be a red herring and made the game’s fusion chart harder to understand.
** This is the chart for arcana fusion in Persona 5, but the chart for arcana fusion in Persona 5 Royal (the expanded version) also works for the extraction, despite having slight differences. For example, Chariot + Emperor yields Strength in Persona 5, but Faith in Persona 5 Royal.


Simple Lightning Payment Processor
Welcome to the SLPP Demo
You should see a QR code below if the app was able to talk to your LND instance.


Here you can find documentation about course virtualization project - for using, creating and documents of more technical type.
Here you can find documentation about course virtualization project - for using, creating and documents of more technical type.


Shop Name
Home
Products
Shipping & Returns
Contact
Signup
Login
Log in
Cart
Information
Payment
Shopping Cart
Remove
Quantity
Price
Gengar - Pokemon
$75.00
1 Item
$75.00
Total
Next >>