Bizarre worlds orbiting a black hole?
| Source: | National Institutes of Natural Sciences |
| Summary: | Theoreticians in two different fields defied the common knowledge that planets orbit stars like the Sun. They proposed the possibility of thousands of planets around a supermassive black hole. |
Theoreticians in two different fields defied the common knowledge that planets orbit stars like the Sun. They proposed the possibility of thousands of planets around a supermassive black hole.
"With the right conditions, planets could be formed even in harsh environments, such as around a black hole," says Keiichi Wada, a professor at Kagoshima University researching active galactic nuclei which are luminous objects energized by black holes.
According to the latest theories, planets are formed from fluffy dust aggregates in a protoplanetary disk around a young star. But young stars are not the only objects that possess dust disks. In a novel approach, the researchers focused on heavy disks around supermassive black holes in the nuclei of galaxies.
"Our calculations show that tens of thousands of planets with 10 times the mass of the Earth could be formed around 10 light-years from a black hole," says Eiichiro Kokubo, a professor at the National Astronomical Observatory of Japan who studies planet formation. "Around black holes there might exist planetary systems of astonishing scale."
Some supermassive black holes have large amounts of matter around them in the form of a heavy, dense disk. A disk can contain as much as a hundred thousand times the mass of the Sun worth of dust. This is a billion times the dust mass of a protoplanetary disk.
In a low temperature region of a protoplanetary disk, dust grains with ice mantles stick together and evolve into fluffy aggregates.  The researchers applied the planet formation theory to circumnuclear disks and found that planets could be formed in several hundred million years.
Currently there are no techniques to detect these planets around black holes. However, the researchers expect this study to open a new field of astronomy.
make a difference: sponsored opportunity
Story Source:
Materials provided by National Institutes of Natural Sciences.
Note: Content may be edited for style and length.
Journal Reference:
- Keiichi Wada, Yusuke Tsukamoto, Eiichiro Kokubo. Planet Formation around Super Massive Black Holes in the Active Galactic Nuclei. Astrophysical Journal, 2019 [link]
Cite This Page:
| MLA | National Institutes of Natural Sciences. "Bizarre worlds orbiting a black hole?." ScienceDaily. ScienceDaily, 25 November 2019. <www.sciencedaily.com/releases/2019/11/191125100415.htm>. |
| APA | National Institutes of Natural Sciences. (2019, November 25). Bizarre worlds orbiting a black hole?. ScienceDaily. Retrieved November 25, 2019 from www.sciencedaily.com/releases/2019/11/191125100415.htm |
| Chicago | National Institutes of Natural Sciences. "Bizarre worlds orbiting a black hole?." ScienceDaily. www.sciencedaily.com/releases/2019/11/191125100415.htm (accessed November 25, 2019). |


| DOSE: |
6.5 mg |
oral |
Clenbuterol |
(powder / crystals) |
Ack what a nightmare.
1 gram Clenbuterol was obtained, later it was measured and dissolved into water to make the proper amount ratio per ml.
But looky here:
Some clenbuterol, what seemed to be very little stayed on the tool which was used to move the clenbuterol from one container to another.
Hey there (I thought in stuper), why dont I taste the remain and see what happens.
T+30: Strange feeling, as if consciousness had changed, but not similiar to anything I ever felt.
T+1h: Feeling somewhat better than normal (if only I would know what was ahead of me....) Is this clenbuterol i thought?
T+2h: Heart rate is higher, but not alarming.
T+3h: Eyes are open wide, and face is feeling stretched, something is building up, and fast.
T+4h: Eyeballs seem to receive some greenish color besides the normal white... and quite amount of axienty had built up, dizzyness and nausea, but somewhat consciousness enhancement, certainly not a good time.
T+5h: feeling quite ill, heart begins to speed up, and for the next 24 hours the heart rate stays at a steady alarming 125-135 beats per minute (WHILE LYING DOWN WITH HEAD ON PILLOW), i could hear my heart with my ear as the vains in my head and the entire body are all swallen up and beating, I can feel the blood pumping intensively, and I feel as I am ready to explode. My girlfriend urges me to get an ambulance, but I disagree, hoping its going to be fine and reassuring her i'm 'okayyyy.'
My entire body was dancing to the beats of my heart; and it was the worst tune you could ever imagine.
T+6h: From here on after for the next 18 hours, intense pressure in my head and limbs had built up, eyes got more wide open, and skin more stretched.
T+12h: It feels as if my heart cant take it anymore as i feel it loosens in some fraile way, and begins to irregularly beat, which is extremely uncomfortable, and quite dangerous.
T+13h: I get dehydrated rather easily, and my tempeature is 38 degrees celceus.
T+15h: for the past hour the tempeature has risen +1 degree. I am now considering the ambulance theory (in my head), as I feel I cant take much more of this.
T+16h: The pressure in the head is unbearable and keeps on increasing, the pain arises as if the skull pressures the brain and there is a psychological feeling as if brain fluid is frying the brain, from the temperature :)
T+17h: A cold shower really helped ... ALOT.
T+19h: Another shower helped.
T+20h: I'm quite tired and exhusted, but in agonizing head pain fearing taking any sedatives since i dont know what interacts with this and how; i take 750mg Paracetamol.
T+21h: Feeling a bit better, but still -- headache is anguishing, I am utterly exhusted and afraid to fall asleep, although possibly, i can.
T+24h: Heart rate down to 120 per minute, and tempeature had decreased by two degrees the past two hours, a nice opportunity to get some sleep
T+32h: Woke up.... (Thank God, I'm alive!) heart rate is still at a steady 120 beats per minute while lying down #!$#!$#!$!%
T+42h: heart rate down to a steady 105 beats per minute
t+70h: 65 beats per minute, lying down.
For the following week, intense vain, skin, and eye pain was felt, besides the utter exhustion and the sharp pain in the center of the head.
Thank God, For He saved me from my stupidity :) That only my faith kept me going, thougout this living nightmare.
There were many side effects during the experience, of pseudohallucenogenic nature: closed and open eye visual effects, very hard stimulation; food was tasteless and meaningless, and would result in vomiting; nothing could be drank besides water, or heartburn would occur, and it did, from drinking Cola, alone. Increased sweating, and increased resperation, hard amphetamiine-like jitterness which lasted throughout the entire horryfing experience, highly-extremely increased metabolic rate,
tempeature changes, general change in consciousness, ear popping, and some more things.
Overall, This was my first experience with this pseudosteroidical
substance, which i didnt take seriously, and i paid the price, and i'm lucky i'm alive to report it.
 If you cant measure something properly, and or not sure of its potency - DO NOT DO IT: as tempting or curiousing as it may be, you might not be as lucky as I was.
What a nightmare
Thank God its over.
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


|
| | HybridSystem (char name,varargin varargin) |
| | the default calss constructor More...
|
| |
| function obj = | setOption (varargin) |
| | Sets the object options, and return the complete list of option structure including unchanged default options. More...
|
| |
| function ret = | isdag () |
| | returns true if the directed graph is a directed acyclic graph More...
|
| |
| function ret = | isDirectedCycle () |
| | returns true if the underlying directed graph is a simple directed cycle. More...
|
| |
| function HybridSystem sys = | subGraph (nodeIDs) |
| | extract the subgraph of the hybrid system to create a new hybrid system object with the same name More...
|
| |
| function obj = | addVertex (varargin) |
| | Adds a vertex or a group of vertices to the directed graph 'Gamma'. More...
|
| |
| function obj = | addEdge (varargin) |
| | Adds an edge or a group of edges to the directed graph 'Gamma'. More...
|
| |
| function obj = | rmVertex (cellstr vertex_name) |
| | Removes a vertex or a group of vertices from the directed graph object 'Gamma'. More...
|
| |
| function obj = | rmEdge (cellstr s,cellstr t) |
| | Removes a edge or a group of edges from the directed graph object 'Gamma'. More...
|
| |
| function obj = | setEdgeProperties (s, t, varargin) |
| | Sets the values of edge properties. More...
|
| |
| function obj = | setVertexProperties (cellstr vertex, varargin) |
| | Sets the values of vertex properties. More...
|
| |
| function obj = | simulate (double t0,colvec x0,double tf, logger,struct options, varargin) |
| | Simulate the hybrid dynamical system. More...
|
| |
| function obj = | compile (char export_path,varargin varargin) |
| | export the symbolic expressions of the system dynamics matrices and vectors and compile as MEX files. More...
|
| |
| function obj = | saveExpression (char export_path,varargin varargin) |
| | save the symbolic expression of system dynamical equations to a MX binary files More...
|
| |
|
| char | Name |
| | This is the name of the object that gives the object an universal identification. More...
|
| |
| digraph | Gamma |
| | The directed graph that describes the hybrid dynamical system structure. More...
|
| |
| struct | Options |
| | The option of the hybrid system model. More...
|
| |
| struct | VertexProperties |
| | A structure describes the name, type, attributes, and default value of each properties of the vertex. More...
|
| |
| struct | EdgeProperties |
| | A structure describes the name, type, attributes, and default value of each properties of the edge. More...
|
| |
| Public Attributes inherited from handle |
| | addlistener |
| | Creates a listener for the specified event and assigns a callback function to execute when the event occurs. More...
|
| |
| | notify |
| | Broadcast a notice that a specific event is occurring on a specified handle object or array of handle objects. More...
|
| |
| | delete |
| | Handle object destructor method that is called when the object's lifecycle ends. More...
|
| |
| | disp |
| | Handle object disp method which is called by the display method. See the MATLAB disp function. More...
|
| |
| | display |
| | Handle object display method called when MATLAB software interprets an expression returning a handle object that is not terminated by a semicolon. See the MATLAB display function. More...
|
| |
| | findobj |
| | Finds objects matching the specified conditions from the input array of handle objects. More...
|
| |
| | findprop |
| | Returns a meta.property objects associated with the specified property name. More...
|
| |
| | fields |
| | Returns a cell array of string containing the names of public properties. More...
|
| |
| | fieldnames |
| | Returns a cell array of string containing the names of public properties. See the MATLAB fieldnames function. More...
|
| |
| | isvalid |
| | Returns a logical array in which elements are true if the corresponding elements in the input array are valid handles. This method is Sealed so you cannot override it in a handle subclass. More...
|
| |
| | eq |
| | Relational functions example. See details for more information. More...
|
| |
| | transpose |
| | Transposes the elements of the handle object array. More...
|
| |
| | permute |
| | Rearranges the dimensions of the handle object array. See the MATLAB permute function. More...
|
| |
| | reshape |
| | hanges the dimensions of the handle object array to the specified dimensions. See the MATLAB reshape function. More...
|
| |
| | sort |
| | ort the handle objects in any array in ascending or descending order. More...
|
| |
HybridSystem defines a hybrid dynamical system that has both continuous and discrete dynamics, such as bipedal locomotion.
This class provides basic elements and functionalities of a hybrid dynamicsl system. The mathematical definition of the hybrid system is given as
\begin{eqnarray*} \mathscr{HC} = \{\Gamma, \mathcal{D}, U, S, \Delta, FG\} \end{eqnarray*}
The implementation of the hybrid system class is heavily based on the Matlab's digraph data type, with wrapper functions with additional validation.
- Author
- Ayonga Hereid
- Date
- 2016-09-26
Copyright (c) 2016, AMBER Lab All right reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted only in compliance with the BSD 3-Clause license, see http://www.opensource.org/licenses/bsd-license.php


Quick example to show a scriptprocessor being used to generate a square wave. The script processor uses a phase accumulating oscillator, incrementing a register by an amount related to the frequency slider, and filling a sample output buffer with +1 or -1 depending on whether the phase accumulator value is positive or negative. The output of the scriptprocessor is connected to a BiquadFilter with cutoff and resonance controls, and the output of the filter is connected to the destination.


NFL: Colin Kaepernick proves he can still throw and make the big statement
by The New DailyRacial injustice campaigner Colin Kaepernick has thrown down the gauntlet to NFL clubs, refusing to hold a private training session and instead taking it public as he looks towards a comeback.
The quarterback said he was ready to play anywhere after a long-awaited tryout at an Atlanta area high school on Saturday, with video posted on social media showing he has lost none of his deep throwing prowess.
“I’ve been ready for three years. I’ve been denied for three years,” said the former San Francisco 49er who made headlines by kneeling at games during the US anthem to protest against racial injustice.
He has said teams would not sign him because they wanted to distance themselves from the protests, which President Donald Trump criticised as unpatriotic and disrespectful.
“So we are waiting for the 32 owners, 32 teams and (league commissioner) Roger Goodell to stop running,” the 32-year-old said.
Stop running from the truth, stop running from the people. We are ready to play. We are ready to go anywhere.’’
The NFL had arranged the tryout at the Atlanta Falcons training facility, but at the last minute the quarterback’s representatives moved the workout to a high school stadium.
Kaepernick said it was done so media could be present.
Live stream video showed Kaepernick making a variety of throws to a group of receivers to applause from onlookers.
His arm talent remains “elite” and is the same as when he came out of college, ESPN reported an NFL executive commenting after the workout, adding Kaepernick threw the ball well.
Kaepernick’s representatives made the move to the high school after accusing the league of not acting in a forthright manner in organising the workout.
Kaepernick also had requested all media be allowed into the workout to observe and film it, but the NFL denied the request, his representatives said in a statement.
The NFL said it was informed of Kaepernick’s decision 30 minutes before the workout was to begin.
Representatives from at least 25 of the NFL’s 32 teams had been scheduled to attend the workout. Several made it to the new location.
Kaepernick has played six seasons in the NFL and participated in six post-season games, including Super Bowl XLVII in 2013, when the 49ers lost 34-31 to Baltimore Ravens.
The Nevada product, who was a second-round draft pick by the 49ers in 2011, has passed for 12,271 yards in his career with 72 touchdowns and 30 interceptions.
He also rushed for 2300 yards and 13 more TDs.
-with AAP


Overview
Tree-Top Houses
By the natural process of evolution we have now arrived at the tree-top house. It is interesting to the writer to see the popularity of this style of an outdoor building, for, while he cannot lay claim to originating it, he was the first to publish the working drawings of a tree-house. These plans first appeared in Harper’s Round Table; afterward he made others for the Ladies’ Home Journal and later published them in "The Jack of All Trades."
Having occasion to travel across the continent shortly after the first plans were published, he was amused to see all along the route, here and there in back-yard fruit-trees, shade-trees, and in forest-trees, queer little shanties built by the boys, high up among the boughs.
In order to build a house one must make one’s plans to fit the tree. If it is to be a one-tree house, spike on the trunk two quartered pieces of small log one on each side of the trunk (Figs. 91 and 92). Across these lay a couple of poles and nail them to the trunk of the tree (Fig. 91); then at right angles to these lay another pair of poles, as shown in the right-hand diagram (Fig. 91). Nail these securely in place and support the ends of the four poles by braces nailed to the trunk of the tree below. The four cross-sills will then (Fig. 95) serve as a foundation upon which to begin your work. Other joists can now be laid across these first and supported by braces running diagonally down to the trunk of the tree, as shown in Fig. 95. After the floor is laid over the joist any form of shack, from a rude, open shed to a picturesque thatch-roofed cottage, may be erected upon it. It is well to support the two middle rafters of your roof by quartered pieces of logs, as the middle rafters are supported in Fig. 95; by quartered logs shown in Fig. 92.
If the house is a two-tree house, run your cross-sill sticks from trunk to trunk, as in Fig. 94; then make two T-braces, like the one in Fig. 94 A, of two-inch planks with braces secured by iron straps, or use heavier timber, and bolt the parts together securely (Fig. 93), or use logs and poles (Fig. 94), after which hang these T’s over the ends of your two cross sticks, as in Fig. 94, and spike the uprights of the T’s securely to the tree trunks. On top of the T you can rest a two-by-four and support the end by diagonals nailed to the tree trunk (Fig. 94) after the manner of the diagonals in Fig. 95. You will note in Fig. 95 that cleats or blocks are spiked to the tree below the end of the diagonals in order to further secure them. It is sometimes necessary in a two-tree house to allow for the movement of the tree trunks. In Florida a gentleman did this by building his tree-house on the B sills (Fig. 94) and making them movable to allow for the play of the tree trunks. Fig. 96 shows a two-tree house and Fig. 97 shows a thatch-roofed cottage built among the top branches of a single tree.
It goes without saying that in a high wind one does not want to stay long in a tree-top house; in fact, during some winds that I have experienced I would have felt much safer had I been in a cyclone cellar; but if the braces of a tree-house are securely made and the trees selected have good, heavy trunks, your tree-top house will stand all the ordinary summer blows and winter storms. One must remember that even one’s own home is not secure enough to stand some of those extraordinary gales, tornadoes, and hurricanes which occasionally visit parts of our country.
Since I published the first plans of a tree-top house many people have adopted the idea and built quite expensive structures in the boughs of the trees. Probably all these buildings are intact at the present writing.
The boys at Lynn, Mass., built a very substantial house in the trees, and the truant officer claimed that the lads hid away there so that they could play "hookey" from school; but if this is true, and there seems to be some doubt about it, it must be remembered that the fault was probably with the schools and not the boys, for boys who have ingenuity and grit enough to build a substantial house in a tree cannot be bad boys; industry, skill, and laborious work are not the attributes of the bad boy.
Some New York City boys built a house in the trees at One Hundred and Sixty-ninth Street, but here the police interfered, claiming that it was against a city ordinance to build houses in shade-trees, and maybe it is; but, fortunately for the boys, there are other trees which may be used for this purpose. There is now, or was recently, an interesting tree-house on Flatbush Avenue, Brooklyn; a house so commodious that it was capable of accommodating as many as fifteen people; but it was not as pretty and attractive a tree-house as the one located at the foot of Mount Tamalpais, in Mill Valley, San Francisco, which is built after the plan shown by Fig.
- This California house is attached to the trunk of a big redwood tree and is reached by a picturesque bridge spanning a rocky canyon.
Tree-houses are also used as health resorts, and recently there was a gentleman of Plainfield, Mass., living in a tree-house because he found the pure air among the leaves beneficial; while down in Ecuador another man, who feared malarial mosquitoes and objected to wild beasts and snakes, built himself a house on top of an ibo-tree, seventy feet from the ground. This is quite a pretentious structure and completely hides and covers the top of the tree. It is located on the banks of the Escondido River; and in this tropical country, while it may be a safe retreat from the pests enumerated, it might not be so safe from lightning in one of those violent tropical storms. But it is probably as safe as any house in that country, for one must take chances no matter what kind of a house one dwells in.
Primitive and savage men all over the world for thousands of years have built dwellings in tree tops. In the Philippines many natives live in tree-top houses. The Kinnikars, hill-tribesmen of Travancore, India, are said to live in houses built in the trees, but in New Guinea it seems that such houses are only provided for the girls, and every night the dusky lassies are sent to bed in shacks perched in the tree tops; then, to make safety doubly safe, the watchful parents take away the ladders and their daughters cannot reach the ground until the ladders are replaced in the morning.
The most important thing about all this is that a tree-house is always a source of delight to the boys and young people, and, furthermore, the boys have over and over again proved to the satisfaction of the author that they themselves are perfectly competent to build these shacks, and not only to build them but to avoid accidents and serious falls while engaged in the work.


Twitch Badge Collector
Broadcaster
Moderator
VIP
Verified
0
25
50
75
100
REVIEW
SUPPORT
HOME
v4.4.4 made by nanana~


I love web development, know a little javacript, css, html,angular.js,bootstrap,and have little experience in node.js, bower, and grunt.
I am very interested in Data science. I know some algorithm and have some experience in R


Yao Peisen 姚培森Assistant ProfessorSchool of Cyber Science and Technology College of Computer Science and Technology Zhejiang University Office: Room 9362, ZJU-Hangzhou Global Scientific and Technological Innovation Center Email<EMAIL_ADDRESS>Official homepage at ZJU: https://person.zju.edu.cn/en/pyao |
I am looking for self-motivated students (undergraudate, graudate, ...) to work with. If you are interested, please drop me an email:).
News
- I am currently on the program committee of RAID 2023, PLDI 2023, and ISSTA 2024. Please consider submitting a paper!
- Our paper "Verifying Data Constraint Equivalence in FinTech Systems" has been accepted at ICSE 2023! The equivalence verifier has been deployed in Ant Group (a global FinTech company with 1 billion activeusers), and is available on GitHub!
- BEACON (S&P'22) is selected for Google Research Paper Rewards!
- Our paper "Complexity-Guided Container Replacement Synthesis (OOPSLA'22)" has been recognized with an ACM SIGPLAN Distinguished Paper Award!
- Lockpick has been accepted at USENIX Security'23. It uncovers 203 unique and confirmed lock misuses from a broad spectrum of impactful systems, including OpenSSL, Linux Kernel, PostgreSQL, MariaDB, FFmpeg, Apache HTTPd, and FreeBSD.
Research Interests
I am broadly interested in topics related to programming languages, software engineering, and cybersecurity, with an emphasis on using program reasoning techniques to ensure software reliability, e.g.,Current Research
- Program Analysis and Verification
- Path sensitivity [PLDI21'a] [ISSTA'20], context sensitivity (via CFL-reachability) [OOPSLA'22a]
- Best transformers for abstract interpretation [OOPSLA'21]
- Reasoning about concurrency [PLDI21'b] [USENIX Security'23], collections [TOSEM'23], and numerics [ICSE'22] [ASE'21] [ASE'23a]
- Fuzz testing [S&P'24] [TDSC'23] [S&P'22 ] [ESEC/FSE'21] [ISSTA'21] [S&P'20]
- Equivalence verification [ICSE'23] and change impact analysis [ASE'23b] for Fintech systems.
- Program Synthesis and Automated Reasoning
- Synthesis for code optimization [OOPSLA'22b ] and code search [ECOOP'23]
- Optimization Modulo Theory [OOPSLA'21]
Selected Publications
-
S&P 2024: Titan: Efficient Multi-target Directed Greybox Fuzzing.
Heqing Huang, Peisen Yao*, Hung-Chun Chiu, Yiyuan Guo, and Charles Zhang.
The 45th IEEE Symposium on Security and Privacy (Oakland) (CCF Rank A) -
ASE 2023a: Demystifying Template-based Invariant Generation for Bit-Vector Programs.
Peisen Yao, Jingyu Ke, Jiahui Sun, Hongfei Fu, Rongxin Wu, and Kui Ren.
The 2023 IEEE/ACM Automated Software Engineering Conference (CCF Rank A) -
ASE 2023b: DCLink: Bridging Data Constraint Changes and Implementations in FinTech Systems.
Wensheng Tang, Chengpeng Wang, Peisen Yao, Rongxin Wu, Xianjin Fu, Gang Fan, and Charles Zhang.
The 2023 IEEE/ACM Automated Software Engineering Conference (CCF Rank A) -
ECOOP 2023: Synthesizing Conjunctive Queries for Code Search.
Chengpeng Wang, Peisen Yao*, Wensheng Tang, Gang Fan, and Charles Zhang.
European Conference on Object-Oriented Programming (CCF Rank B) -
TDSC 2023: Balance Seed Scheduling via Monte Carlo Planning.
Heqing Huang, Hung-Chun Chiu, Qingkai Shi, Peisen Yao, and Charles Zhang.
IEEE Transactions on Dependable and Secure Computing (CCF Rank A) -
ICSE 2023: Verifying Data Constraint Equivalence in FinTech Systems.
Chengpeng Wang, Gang Fan, Peisen Yao*, Fuxiong Pan, and Charles Zhang.
The 2023 IEEE/ACM International Conference on Software Engineering (CCF Rank A) -
USENIX Security 2023: Place Your Locks Well: Understanding and Detecting Lock Misuse
Bugs.
Yuandao Cai, Peisen Yao*, Chengfeng Ye, and Charles Zhang
The 32nd USENIX Security Symposium (CCF Rank A) -
TOSEM 2023: Anchor: Fast and Precise Value-Flow Analysis for Containers
via Memory Orientation.
Chengpeng Wang, Wenyang Wang, Peisen Yao*, Qingkai Shi, Jinguo Zhou, Xiao Xiao, and Charles Zhang
ACM Transactions on Software Engineering and Methodology (CCF Rank A) -
OOPSLA 2022a: Indexing the Extended Dyck-CFL Reachability for
Context-Sensitive Program Analysis.
Qingkai Shi, Yongchao Wang, Peisen Yao, and Charles Zhang.
The 37th ACM SIGPLAN Conference on Objected Oriented Programming, Systems, Languages, and Applications (CCF Rank A) -
OOPSLA 2022b: Complexity-Guided Container Replacement Synthesis.
Chengpeng Wang, Peisen Yao*, Wensheng Tang, Qingkai Shi, and Charles Zhang.
The 37th ACM SIGPLAN Conference on Objected Oriented Programming, Systems, Languages, and Applications (CCF Rank A)
ACM SIGPLAN Distinguished Paper Award -
ICSE 2022: Precise Divide-By-Zero Detection with Affirmative
Evidence.
Yiyuan Guo, Jinguo Zhou, Peisen Yao*, Qingkai Shi, and Charles Zhang.
The 2022 IEEE/ACM International Conference on Software Engineering (CCF Rank A) - S&P 2022: BEACON:
Directed Grey-Box Fuzzing with Provable Path Pruning.
Heqing Huang, Yiyuan Guo, Qingkai Shi, Peisen Yao, Rongxin Wu, and Charles Zhang.
The 43rd IEEE Symposium on Security and Privacy (Oakland) (CCF Rank A)
Google Research Paper Rewards -
OOPSLA 2021: Program Analysis via Efficient Symbolic
Abstraction.
Peisen Yao, Qingkai Shi, Heqing Huang, and Charles Zhang.
The 36th ACM SIGPLAN Conference on Objected Oriented Programming, Systems, Languages, and Applications (CCF Rank A) -
ASE 2021: Transcode: Detecting Status Code Mapping Errors in
Large-Scale Systems.
Wensheng Tang, Yikun Hu*, Gang Fan, Peisen Yao*, Rongxin Wu, Guangyuan Bai, Pengcheng Wang, and Charles Zhang.
The 2021 IEEE/ACM Automated Software Engineering Conference (CCF Rank A) -
ESEC/FSE 2021: Skeletal Approximation Enumeration for SMT Solver
Testing.
Peisen Yao, Heqing Huang, Wensheng Tang, Qingkai Shi, Rongxin Wu, and Charles Zhang.
The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (CCF Rank A)
-
ISSTA 2021: Fuzzing SMT Solvers via Two-Dimensional Input Space
Exploration.
Peisen Yao,Heqing Huang, Wensheng Tang, Qingkai Shi, Rongxin Wu, and Charles Zhang.
The 30th ACM SIGSOFT International Symposium on Software Testing and Analysis (CCF Rank A) -
PLDI 2021a: Path-Sensitive Sparse Analysis without Path
Conditions.
Qingkai Shi, Peisen Yao*, Rongxin Wu, and Charles Zhang
The 42nd ACM SIGPLAN Conference on Programming Language Design and Implementation (CCF Rank A)
-
PLDI 2021b: Canary: Practical Static Detection of Inter-Thread Value-Flow
Bugs.
Yuandao Cai, Peisen Yao*, and Charles Zhang.
The 42nd ACM SIGPLAN Conference on Programming Language Design and Implementation (CCF Rank A) -
ISSTA 2020: Fast Bit-Vector Satisfiability.
Peisen Yao, Qingkai Shi, Heqing Huang, and Charles Zhang.
The 29th ACM SIGSOFT International Symposium on Software Testing and Analysis (CCF Rank A)
-
S&P 2020: Pangolin: Incremental Hybrid Fuzzing with Polyhedral Path
Abstraction.
Heqing Huang, Peisen Yao, Rongxin Wu, Qingkai Shi, and Charles Zhang.
The 41st IEEE Symposium on Security and Privacy (Oakland) (CCF Rank A) -
Technical Report: Efficient Path-Sensitive Data-Dependence Analysis.
Peisen Yao, Jinguo Zhou, Xiao Xiao, Qingkai Shi, Rongxin Wu, and Charles Zhang
* means corresponding author.
Honors & Awards
- Google Research Paper Rewards
- Honorable Mention in the CSE Best Dissertation Award, HKUST
- ACM SIGPLAN Distinguished Paper Award
- Qizhen Scholar of ZJU (浙江大学启真优秀青年学者)
- Outstanding Undergraduate Award of HUST
- Second Place in HPL track, Asia Super-computing Student Competition (ASC)
- Technical Excellence Award, Unique Hackday
Software
- Program Analysis and Verification
-
Pinpoint: An SMT-based, industrial-strength static analysis framework (PLDI'21b, ASE'21, PLDI'21a, PLDI'21b, ICSE'22, OOPSLA'22a, USENIX Security'23, TOSEM'23...)
- Pinpoint has found hundreds of bugs in many mature and fundamental open-source projects, including Linux Kernel, FreeBSD, MySQL, Firefox, HBase, OpenSSL, PostgreSQL, MariaDB, FFmpeg, Apache HTTPd, Git, Python, Memcached, Redis, Tmux, Vim, Mariadb, and many others.
- Pinpoint was commercialized at Sourcebrella Inc, which was acquired by Ant Group in 2020.
-
Pangolin: A fuzzing framework for general-purpose programs (S&P'20, S&P'22, TDSC'23, S&P'24)
- A partial of of detected vulnerabilities in open-source projects can be found here
- We received the Google Research Paper Rewards and two Huawei Distinguished Collaborator Awards for deploying our fuzzers
-
SMTFuzz: A fuzzing framework for SMT solvers (ESEC/FSE'21, ISSTA'21)
- SMTFuzz has found hundreds of bugs in several state-of-the-art SMT solvers and first-order theorem provers, such as Z3, CVC5, Yices2, STP, Boolector, MathSAT5, SMTInterpol, OpenSMT, SMT-RAT, DReal, SPASS, and Vampire
- You may try a simplified implementation of the random formula generator by "pip install smtfuzz"
-
EqDAC: An equivalence checker for verifying data constraint equivalence (ICSE'23)
- EqDAC has been deployed in Ant Group, a global FinTech company with 1 billion activeusers.
-
- Program Synthesis and Automated Reasoning
Service
- Program Committee: ISSTA'24, SPLASH'23 SRC, RAID'23, PLDI'23, ChinaSoft'22
- Artifact Evaluation Committee: ICSE'24, PLDI'23, USENIX Security'23, MobiSys'23, ATC'22, OSDI'22
- Conference Reviewer/Sub-reviewer/Co-reviewer: ATVA'22, ISSRE'21, ESEC/FSE'19, ISSTA'19, ASE'18, VMCAI'17
- Journal Reviewer: ACM Transactions on Programming Languages and Systems, IEEE Transactions on Reliability, Journal of Software
Mentoring
Courses
- COMP4632: Practicing CyberSecurity: Attacks and Counter-measures, HKUST
- COMP3021: Java Programming, HKUST
- COMP3511: Operating System, HKUST


| MetroCon 2000 |
Program
|
| This year's program consists of three tracks, Enabling Technologies, Internet, and Telecom. Attendees may roam between the three tracks as they please. |
|
|
|
|
|
|
|
|
James T. Smith, Verizon |
Keith Jacobs, Sapient |
Thinh (Tut) Nguyenphu, Nokia |
|
|
Douglas J. Matzke, Texas Instruments |
Richard Dorough & Scott Gruen, PricewaterhouseCoopers |
Giridhar D. Mandyam, Nokia |
|
|
Ralph Merkle, Zyvex |
Keith Lowery, epicRealm |
Alan Triggs, Ericsson |
|
|
"Tesla: Master of Lightning" Robert Uth, Producer, Director, and Author |
||
|
|
Workshop Led by Edward S. Kolesar, TCU |
Don Horton, Ericsson |
Jason Losh, Motorola |
|
|
Led by E.L. (Ed) Safford, Lockheed Martin |
Jeff Carrell, Foundry Networks |
William Hurst, Telecommunication Information Services |
|
(color coded) |
Definition |
|
|
Anyone from any technical or managerial field should be able to understand the material. The objective of this type of program is to provide awareness of the topic. |
|
|
Participants should have some subject matter knowledge of the topic to understand the material. The objective of this type of program is to elaborate and extend the participant’s depth of understanding. |
|
|
Participants should have research or application level knowledge of the topic. The objective of this type of program is to share research results or provide additional application skills to the participant. |
| MetroCon 2000 |
Keynote Address
|
The Fort Worth Section is
delighted to present this year's keynote luncheon address:
| "Tesla - Master
of Lightning"
by Robert Uth
|
Who Was Nikola Tesla?
Nikola Tesla was one of the greatest electrical inventors who ever lived. His technological achievements transformed America from a nation of isolated communities to a country connected by power grids where information was available upon demand. In the 20th century, it was Tesla’s technology that united the United States and eventually the world.
Tesla's life was like a movie. It is the story of a brilliant and charismatic immigrant who rose to the height of celebrity with his amazing talent, and then was tragically undone by his own visionary ideas. The cast of characters includes: Thomas Edison, J. Pierpont Morgan, Guglielmo Marconi, George Westinghouse, Mark Twain and many more.
A Serb by origin, his early discovery of the alternating current motor led him to America to seek a venue for his discovery. Here he developed the polyphase AC system of power transmission, which drives every home and industry in the country. He invented the Tesla coil to create high-frequency electricity, and with it neon and florescent lighting, radio transmission, remote control, and hundreds of other devices which are now an essential part of our everyday lives.
Tesla was also a visionary thinker, and in his papers and interviews he anticipated the development of radio and television broadcasting, robotics, computers, faxes, and even the Strategic Defense Initiative. Tesla’s great dream was to find the means to broadcast electrical power without wires in between. But like many geniuses, he was not a practical man. He gave his life to realize his visions, while others made millions with his inventions. In the end, he wound up a penniless and forgotten man.
In his later years, Tesla was regarded as an eccentric scientist. Ridiculed by his contemporaries, his ideas frequently appeared in works of science fiction. He was the inspiration for the mad scientist in Max Fleischer’s Superman cartoons. At the height of World War Two, Tesla claimed that he invented a powerful “death beam” that could destroy attacking aircraft. He proposed a system of beam weapons to protect the borders of the United States and other European nations. When he died, most of Tesla’s technical papers mysteriously disappeared, and many have not been found since.
Tesla was so far ahead of his time that many of his ideas are only appearing today. His legacy can been seen in everything from microwave ovens to MX missiles. But more than this, Tesla’s life inspires us to believe that anything we can imagine can be accomplished – especially with electricity.
Speaker Biography
Robert Uth is the owner and executive director of National Productions, a full-service television production company in Washington, D.C.
He earned a BA in literature with a minor in drama from the University of Cincinnati in 1972. Following graduation, Uth worked as a photography instructor and museum curator for a fine arts center in Cincinnati, Ohio. He also worked as jazz and pop-music critic for the Cincinnati Enquirer from 1974-1976. Following this, he worked for several large advertising agencies as a creative director from 1976-78.
Uth began his television career in 1977. As a director and communications consultant for Taft Broadcasting Company, he created and produced numerous television commercials. These commercials were noted for their creativity and syndicated widely throughout the United States. For these Uth earned several Addy Awards for best television advertising.
In 1981, Uth moved to Washinton, DC and began his own production company, National Productions. Since that time, he has written, produced and directed hundreds of programs for agencies of the Federal Government, international development organizations, associations, and businesses in the Washington, D.C. area and abroad. In 1986, Uth directed and co-wrote “Living Double Lives,” a documentary on nuclear weapons featuring Colleen Dewhurst which aired nationally on PBS. The program received a “Chris Award” for outstanding educational program. In 1991, Uth directed, "World Population," a short, animated video about the population explosion which won first prize in the Casa de las Ciencias International Competition for Scientific Diffusion Videos. In 1994, Uth wrote and directed, "The Spirit of Cooperation," a one-hour documentary on cooperatives hosted by James Earl Jones which aired on 130 public television stations in the United States.
Recently, Uth has completed
production of a major PBS documentary on the life and times of the famous
electrical inventor, Nikola Tesla, with a companion book published by Barnes
and Noble. The program will air December 12, 2000, 10-11:30 p.m.
Uth is currently working on a documentary about the Korean War for PBS.
| MetroCon 2000 - Enabling Technologies Track |
Abstracts & Biographies
|
Emerging New Products
James T. Smith, Verizon
8:30-9:30am
Presentation Level: Introduction
Abstract: High-technology such as that represented by materials science, systems science, and Micro-ElectroMechanical Systems (MEMS) has recently witnessed a number of technology breakthroughs which promise to impact a broad spectrum of industries-from computing and communications, to manufacturing and medicine. One result will be that many existing business models will be made obsolete--necessitating a total rethinking of their business. On the other hand, many new opportunities will be enabled. This presentation examines some examples of these technological breakthroughs. As a follow-up, the examination also will consider the megatrend changes that these breakthoughs already are producing.
Biography: James Smith received his BS in Math and Physics from Millsaps College and his MS in Math and Computer Science from the University of Tennessee at Knoxville. He also did graduate work in engineering at Georgia Institute of Technology, University of Mississippi, and the University of Utah. Mr. Smith is a senior systems architect for GTE Telephone Operations (HQ), where he developed the Advanced Information Network (AIN) system requirements, architectures, and information models. He is currently performing strategic assessments of emerging technologies in areas which could significantly impact the telecommunications industry - including materials science, photonics, networking, systems design and software engineering methodologies, and e-commerce.
Quantum Computing
- Why quantum computing is hard for engineers to understand but worth the
effort
Douglas J. Matzke, Texas
Instruments
9:45-10:45am
Presentation Level: Intermediate
Abstract: The definition of information terms such as bits, states, and universal are similar yet different between classical and quantum approaches. These conceptual differences are expressed using different mathematical techniques and notation, which makes quantum information and quantum computing ideas practically inaccessible to the majority of the classically trained people in the information industry. This difficulty in understanding occurs even for leading computer scientists, especially if they are classically trained. This session will show how quantum information theory differs from classical information theory, and indicates some common techniques they share.
Biography: Doug Matzke received his BSEE from the University of Wisconsin, and his MSEE from the University of Texas, Austin. He is also pursuing a Ph. D. at SMU in Dallas. Mr. Matzke is a senior member of the technical staff at Texas Instruments, where he works on DSP and other advanced processor designs. An active contributor to the IEEE and other organizations, Mr. Matzke was the general chairman for the Workshop on Physics and Computation, PhysComp 94, and a session chair at the IEEE Workshop on Parallel and Distributed Computing 92. His work as a member of the design team for a DARPA funded Lisp chip led to an ISSCC best paper award. The author of over 20 technical papers, he also holds 5 US patents in digital chip technology.
Molecular Nanotechnology
Ralph Merkle, Zyvex
11:00-12:00pm
Presentation Level: Intermediate
Abstract: Manufactured products are made from atoms. The properties of those products depend on how those atoms are arranged. Today's manufacturing methods move atoms in great statistical herds. In the future, nanotechnology will let us inexpensively fabricate most products permitted by physical law, getting essentially every atom in the right place. What such "molecular manufacturing systems" will look like and how long it will take to develop them are still matters of debate, but President Clinton's announcement of the $500 million National Nanotechnology Initiative (www.nano.gov) has jump started interest by government agencies, universities and private companies. Two principles are likely to be important regardless of the approach and time frame: the ability to hold, position and assemble molecular parts and the ability to self replicate.
Our species is virtually defined by our ability to wield tools: our hands let us build the artifacts of our civilization. Molecular "hands" could extend this remarkable flexibility to the molecular scale. But assembling a few molecular parts is not enough: we need to inexpensively assemble mole quantities of molecular parts to make macroscopic products. Nature has already done this: wood is an inexpensive structural material despite the fact it is made of untold billions of complex molecular machines called "cells." This is because cells can make more cells. We could do likewise, making molecular manufacturing systems able to make more molecular manufacturing systems -- producing inexpensive products available to all. (Further information on nanotechnology is available at www.zyvex.com/nano).
Biography: Ralph Merkle received his B.A. and M.S. in computer science from University of California, Berkeley, and his Ph. D. in electrical engineering from Stanford. Formerly a research scientist at Xerox PARC, he is currently Principal Fellow at Zyvex, LLC, a firm devoted to commercializing nanotechnologies. With over 50 published papers, Dr. Merkle is internationally recognized as a leader in the field of molecular nanotechnology. Recently Dr. Merkle was called upon to give congressional testimony which helped secure the U. S. National Nanotechnology Initiative announced this year. His most recent publication, "How Manufacturing Will Change", appeared in the January 2000 issue of IEEE computer. His website is http://www.merkle.com.
MicroElectroMechanical
Systems Workshop
Led
by Edward S. Kolesar, TCU
1:30-3:00pm
Presentation Level: Advanced
Abstract: The field of micromachined sensors and actuators, often referred to as “MEMS” (microelectromechanical systems), has been growing at an exciting pace in recent years. Using tools originally developed for the silicon integrated circuit industry, people are now fabricating miniaturized transducers and structures from silicon and other materials. In many cases, these new devices offer advantages compared to their “conventional” counterparts, including significant reductions in size and mass, new functions that could not otherwise be realized, the capability to include on-chip signal processing/control circuitry, reductions in per-unit cost, and the ability to fabricate scaled and multimodal arrays. Of course, new technologies bring with them new challenges, such as the need for new packaging and power sources, system integration issues that need to be addressed, the need for CAD and simulation tools, and finally, process compatibility considerations. Rapid progress is being made on all critical technology fronts, and as a result of this progress, the future of MEMS is more than bright – it is dazzling!
Panel Presentations:
An Optical Sensor for
Characterizing the Deflections of MEMS Structures
Tristan Tayag, Assistant
Professor, Texas Christian University, Department of Engineering, Fort
Worth, TX.
Micromachined Uncooled
Broadband Y-Ba-Cu-O Microbolometers
Zeynep Celik-Butler, Professor,
Southern Methodist University, Department of Electrical Engineering, Dallas,
TX.
Micromachined Two-Color
Microbolometers with Thermal Chopping
Donald P. Butler, Associate
Professor, Southern Methodist University, Department of Electrical Engineering,
Dallas, TX.
Metroplex Research Consortium
for Electronic Devices and Materials (MRCEDM) (SMU, TCU, UNT, UTA, and
TEES)
Wiley P. Kirk, Professor,
The University of Texas at Arlington, Department of Electrical Engineering,
Arlington, TX.
Development of a Surface
Micromachined Electrothermal Microengine
Edward S. Kolesar, W.A.
Moncrief Professor of Engineering, Texas Christian University, Department
of Engineering, Fort Worth, TX.
Chair Biography: Edward S. Kolesar, W.A. Moncrief Professor of Engineering, PhD, University of Texas at Austin; M.S.E.E., Air Force Institute of Technology, Wright-Patterson AFB, Dayton, OH; B.S.E.E., University of Akron – Dr. Kolesar’s career has been devoted to the design, fabrication, modeling and experimental characterization of microsensors and microactuators. He entered the United States Air Force in 1973, and after an initial assignment as a technical intelligence officer, joined the staff of the USAF School of Aerospace Medicine, Brooks AFB, San Antonio, TX, as a senior research electri-cal engi-neer. He initiat-ed an R&D program devoted the synergistic integration of organic semiconductors with conventional IC technology to detect envi-ronmen-tally-sensitive organophosphorus compounds. In May 1985, he joined the faculty in the Department of Electrical and Computer Engineering at the Air Force Institute of Technology, Wright-Patterson AFB, Dayton, OH, where he initiated a microsensors and microtransducers research program. He also served as the vice chair of the Electrical Engineering Department and was awarded the rank of Professor in 1991. Upon retirement from the USAF in 1993, he joined the faculty in the Department of Engineering at Texas Christian University, Fort Worth, TX, where he is the W A. Moncrief Professor of Engineering. His current research interests include organic semiconductors, microelectromechanical systems (MEMS), and silicon micromachined gas chromatography systems. He has served as a technical consultant with The Johns Hopkins University, School of Hygiene and Public Health, Division of Environmental Health Engineering, Baltimore, MD; the USAF Scientific Advisory Board, Washington, D.C.; the ARDEX Corporation, Austin, Texas; the EG&G Mound Applied Technologies Laboratory, Miamisburg, OH; SRI International, Menlo Park, CA; the Lockheed Martin Corporation, Fort Worth, TX; the Presby Corporation, Dallas, TX; and Technispan LLC, Pikesville, MD. He holds 11 U.S. Patents, and is the author of more than 100 refereed journal articles, book chapters and technical reports. Research grants have been received from DARPA, the NSF, the USAF, the Texas Higher Education Coordinating Board and several Metroplex corporations. He is a registered pro-fes-sional engineer in TX; a member of Tau Beta Pi, Eta Kappa Nu, and Sigma Xi; and a senior member of the IEEE.
Software, Lasers,
and ElectroOptics Workshop
Led
by E.L. (Ed) Safford, Lockheed Martin
3:15-4:45pm
Presentation Level: Advanced
Abstract: A world of opportunity lies "beyond Bluetooth". New designs are constantly emerging that change the way we think about what is possible. Smart homes, smart airplanes, smart cars, "smart people". Ultra Low-power MEMS "piconodes" already exist, that can take advantage of multi-hopping and other advanced media access and control schemes. Photonics integration and energy scavenging are technology enablers that will further extend the possibilities for collaborative device solutions to complex problems. However, an often-overlooked technology enabler behind many of these advances is software. For example, in multi-hopping schemes, it has been demonstrated that FPGA and re-configurable state machine approaches can yield an order of magnitude in energy savings over conventional microprocessor solutions. In electro-optical filters, software simulations provide an almost essential tool for rapid visualization and probing of the design space. Software was also a key enabler in decyphering the human genome. In every area of technology advancement - in the research lab, in the factory, and in our products - software provides new capabilities for real-time analysis and control structures, enhanced by continually growing and accessible knowledge bases. What major advances are on the horizon, and what should our expectations of their effect be?
Biography: Ed Safford
received his BS in math and computer science from the University of Houston
and an MS in engineering management from SMU. Mr. Safford is Deputy
Branch Manager, Ground Systems Software, Lockheed Martin Aeronautics Company,
Fort Worth, Texas. His responsibilities include identification, integration,
and deployment of advanced technologies. He is a senior member
of the IEEE, holds a CM from the Institute of Certified Professional Managers
and a PMP from the Project Management Institute. He is also a licensed
Professional Engineer in the state of Texas. He is currently leading
an Independent Research and Development effort for the Joint Strike Fighter.
| MetroCon 2000 - Internet Track |
Abstracts & Biographies
|
Internet Architecture
101
Keith Jacobs, Sapient
8:30-9:30am
Presentation Level: Introductory
Abstract: With the advent and acceptance of the Internet as the next major information technology platform, technologists are scrambling to change their viewpoint of how the new standard architecture looks. The legacies of client-server and even 3-tier architecture are giving way to a new "n-tier" architecture, which focuses on enabling more specialization within the system and thus offering a new dimension of flexibility to Internet architects. But with the advantages of specialization and flexibility come new technical challenges. This introductory session will cover the fundamental basics of n-tier architecture, from front-end (web browser) to back-end (database) and everything in between. It is intended to provide technical awareness to non-technologists and novice technologists, and will not reach any significant level of technical complexity.
Biography: Keith Jacobs is an experienced consultant in the Internet space. He is currently playing a dual role as senior technical specialist and project manager for Sapient Corporation, a leading creator of New Economy businesses. As a specialist, Keith acts as a "consultant to the consultants" on many of Sapient's current Internet projects. As a project manager, Keith leads two projects: an internal research project focusing on localization and global positioning systems in particular, and a project centered around building package software competency across the value chain. Keith is also active in his community. He is a key board member of the Denton Family Resource Center, a "portal" organization that connects families in crisis with local service organizations that can help. He also raises money for the Make-A-Wish Foundation through participation in an annual silent auction. Keith received a Bachelor's of Business Administration in Management Information Systems from the University of Texas at Austin.
Sapient Corporation is a leading creator of New Economy businesses, providing Internet strategy consulting, sophisticated end-to-end solutions, and launch support to Global 1000 and startup companies. As Architects for the New Economy®, Sapient helps clients define their Internet strategies and design, architect, develop and implement solutions to execute those strategies.
Internet Security
Richard Dorough &
Scott Gruen, PricewaterhouseCoopers
9:45-10:45am
Presentation Level: Intermediate
Abstract: The topics that will be presented in this session include Virtual Private Networks, Public Key Infrastructure, Multiple Factor Authentication, firewalls, and web portals and how these technologies interoperate to increase internet security.
Biography: Scott Gruen works for PricewaterhouseCoopers in the Technology Risk Services group. Scott, considered one of the regional UNIX experts, is familiar with several flavors of UNIX including Sun Solaris, HPUX, AIX, and Linux, and serves as a UNIX instructor for PricewaterhouseCoopers. He has experience in selecting, designing, and implementing VPN solutions for clients, including remote access, secure file transfer, and site to site information sharing, and performing network architecture and security reviews. He is also certified in the implementation and administration of the RSA Keon PKI solution.
Internet Content
Delivery
Keith Lowery, epicRealm
11:00-12:00pm
Presentation Level: Intermediate
Abstract: Unvailable
Biography: Unavailable
Wireless Application
Protocol (WAP)
Donald R. Horton, Ericsson
1:30-3:00pm
Presentation Level: Intermediate
Abstract: This session presents an overview of Wireless Application Protocol (WAP). WAP provides a standard for the delivery of internet content over mobile phones and other wireless handheld devices. The presentation will compare and contrast proposed WAP solutions to current Internet solutions. WAP browsers from multiple vendors will be presented, and used to navigate WAP sites on the World Wide Web.
Biography: Don is a Senior Staff Engineer at Ericsson. He is currently involved in the network planning of mobile and fixed wireless communications systems. Previous consulting work involved providing telephony related software and hardware solutions for small businesses as well as state and federal agencies. Don holds graduate degrees in Computer Science from Fairleigh Dickinson University and in Systems Management from Binghamton University. Don is a member of the IEEE Computer Society.
Internet Connectivity
Jeffrey L. Carrell, Foundry
Networks
3:15-4:45pm
Presentation Level: Intermediate
Abstract: Want to know the REAL Story When Connecting Your Home Network to the Internet? This session will cover the basic requirements of connecting a small LAN in the home or office to the Internet using various technologies such as dial-up, ISDN, xDSL, Cable Modem, and wireless. Topics such as access methods, equipment and service costs, who can access your network from the Internet, security and firewalls, and TCP/IP addressing will be covered.
Biography: Jeffrey
L. Carrell is a Consulting Systems Engineer with Foundry Networks.
Jeff has been in the internetworking business for over 14 years and the
computer industry for 21 years. Having designed thousands of networks all
over the world, Jeff has worked for both manufacturers and end-users, been
an independent network consultant, enjoys "playing" with the latest "cool"
technology, and maintains his own computer museum spanning 25 years of
working microcomputers. Jeff is active in the IEEE Fort Worth Section serving
as Chairman, and in IEEE Region 5 as the Electronic Communications Chairman.
| MetroCon 2000 - Telecom Track |
Abstracts & Biographies
|
Next Generation
Wireless All-IP Network
Thinh (Tut) Nguyenphu,
Nokia
8:30-9:30am
Presentation Level: Intermediate
Abstract: In recent years, wireless technology and internet communications have been areas of major change and growth. With the acceptance of the mobile information society, the wireless industry is quickly rolling out packet switched networks for data applications. In order to meet the demand for new services (such as speech, multimedia, and data services) in the packet switched domain, a new generation wireless all-IP network is being developed. This presentation will discuss these network architectures in the context of 3GPP Release 2000 and 3GPP2.
Biography: Thinh (Tut) Nguyenphu is a Senior Standards Engineer with Nokia. He is currently working on 3rd Generation all-IP wireless network architectures including issues related to service delivery. His areas of interests include high-speed data network architectures and QoS. Thinh (Tut) Nguyenphu holds a B.S. in Electrical Engineering from the University of Central Florida. He was a principle member of the team that developed IEEE 802.3 10Base-T and 100Base-T specifications.
1XTREME: A Step
Beyond 3G
Giridhar D. Mandyam,
Nokia
9:45-10:45am
Presentation Level: Intermediate
Abstract: Third generation (3G) wireless systems supporting voice and data services have been proposed since 1997. Standardization of those proposals was completed in 1999. However, anticipated demand for data services, particularly in the area of wireless access to Internet-based services, is driving the need to enhance the data-carrying capability of these systems beyond their current abilities. This paper provides a brief overview of enhancements proposed to the IS-2000 system called 1XTREME.
Biography: Giridhar D. Mandyam received the BSEE degree (Magna Cum Laude) from Southern Methodist University in 1989, the MSEE degree from the University of Southern California in 1993, and the Ph.D. degree in electrical engineering from the University of New Mexico in 1996. He was employed with Rockwell International (Dallas, Texas) from 1989 - 1991. He then worked as a teaching assistant at the University of Southern California (Los Angeles, California) from 1991 - 1993. He was employed at Qualcomm International (San Diego, California) from 1993 - 1994, when he took a leave of absence to pursue graduate studies at the University of New Mexico under a NASA fellowship. After completing his Ph.D., he worked at Texas Instruments (Dallas, Texas) from 1996 - 1998. In 1998, he joined Nokia Research Center (Dallas, Texas) where he is currently a Principal Scientist. He has authored or co-authored over 40 journal and conference publications and three book chapters.
Enhanced Data Rates
for Global Evolution (EDGE)
Alan Triggs, Ericsson
11:00-12:00pm
Presentation Level: Intermediate
Abstract: Mobile Internet is exploding, and the need for cellular and PCS operators to support higher data rates is greater than ever. The 3G evolution paths for GSM and TDMA include a common air-interface standard entitled Enhanced Data Rates for Global Evolution (EDGE). Based on the GSM air-interface, EDGE introduces multiple modulation and coding schemes and link adaption for optimal throughput in variable radio conditions. This talk presents the basic architecture and examines the network planning, frequency reuse, and throughput capabilities for the EDGE radio interface. The impact of radio network features such as frequency hopping will also be discussed, and the relationship between EDGE and General Packet Radio Services (GPRS) will be presented and discussed.
Biography: Alan Triggs received his BSEET degree from the University of North Texas in 1995 and his MSEE degree from the University of Texas at Dallas in 1997. For the past five years he has been employed at Ericsson, where he is currently the Manager for Business Development in the Professional Services group. Prior to that he was a Senior RF Engineer, working primarily on 2G and 3G system performance and technology evaluations. His work focused mainly on CDMA, GSM, and EDGE air-interfaces. For the past two years, Alan has also served as an adjunct faculty member at Southern Methodist University, where he teaches classes in Digital Telephony and Wireless, Cellular, & PCS. Alan is also active in IEEE and is a past chair of the IEEE Fort Worth Section.
Convergence of
Digital PCS Communications Standards (GSM, CDMA, & 3G)
Jason
Losh, Motorola
1:30-3:00pm
Presentation Level: Advanced
Abstract: As terrestrial
digital communication standards evolve, the second-generation technologies,
such as CDMA (IS-95), TDMA (IS-136), and GSM, are converging into a set
of third generation technologies, known as cdma2000 and W-CDMA. Collectively,
these third generation communication systems offer the promise of high-speed
packet services and near worldwide commonality. This presentation
explores the technical similarities and differences of the physical layers
of cdma2000 and W-CDMA, detailing baseband operation, power control, RF
and system deployment issues.
Biography: Jason H. Losh is a Principal Staff Engineer at Motorola. He is currently working on standards and regulatory affairs for 3rd generation wireless systems and develops system simulators to test baseband and RF performance for cdma2000 and W-CDMA standards. He serves as the Chair of the TIA TR45.5 Physical Layer Working Group, the Chair of the Performance Groups of both TIA TR45.5 and 3GPP2 TSG-C, and the Vice Chair of the TIA TR45.5 RF performance group. Jason received his Ph.D. in Electrical Engineering from the University of Texas at Arlington in 1994. His areas of interest include RF design, baseband processing, and system simulations.
Requirements for
Listing a Bluetooth Product
William
Hurst, Telecommunication Information Services, Inc.
3:15-4:45pm
Presentation Level: Advanced
Abstract: Bluetooth
Qualification is the process by which the manufacturer demonstrates compliance
to the Bluetooth specifications, as required by the Adopters agreement.
The Bluetooth Qualification program is the framework that establishes the
qualification rules and procedures. The Bluetooth Specification, and the
qualification process are designed to ensure that products bearing the
Bluetooth mark will interwork as expected. Interoperability between
products is the underlying purpose for qualification. To that end, interoperability
tests are an integral part of qualification.
Biography: William
S. Hurst, P.E., received his B.S.E.E from the University of Utah and is
Registered Professional Engineer in both the United States and Canada.
A 25-year veteran of the testing industry, he is currently Vice President
of Communication Certification Laboratory, Inc. a supplier of testing and
certification services for telecom equipment and President of Telecommunication
Information Services, Inc, a company that specializes in the provision
of regulatory information services to manufacturers, consultants, laboratories,
and regulatory agencies. Bill has been selected to act as a Bluetooth
Qualification Body, BQB.
| MetroCon 2000 |
Registration
|
The deadline for early registration is September 7th (postmarked by). Late registrations will be accepted up to the day of the conference and on-site. However, seating is not guaranteed for late registrants. Please print and mail the registration form below.
Free copy of “Tesla – Master of Lightning” for first 150 attendees registered!
| Registration Details | Registration Amount | Preferred Track | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
To help us with
seat planning, please indicate your track of primary interest (Note, you
may move freely between tracks).
|
| Method of Payment (check one box): | Rules | ||||||||||||||||||||||||||||||
Check or Money Order Enclosed (preferred) (make payable to IEEE)
|
Early Registration Deadline is September 7th. Refund Policy: requests must be received in writing by September 8th. A withdrawal fee of $50 will apply. Substitutions are permitted. Late Registration is available beginning at 7:00am on the day of the conference. Email or call for general information or for Group Discounts -<PHONE_NUMBER><EMAIL_ADDRESS>Seating for late registrants may be limited. |
| Mail to: |
| IEEE MetroCon 2000
P.O Box 1594 Hurst TX 76053-1594 |
| MetroCon 2000 |
Organizing Committee
|
| Chairman
Jeffrey Carrell Foundry Networks<EMAIL_ADDRESS>(817) 595-0343 Vice-Chairman
|
Enabling Technologies
Track Chair
Ed Safford Lockheed Martin<EMAIL_ADDRESS>(817) 763-7696 Internet Track Chair
|
Telecom Track Chair
Thomas Sears Motorola<EMAIL_ADDRESS>(817) 245-6488 |


PART XV. DISSOLUTION
A. Voluntary Dissolution
[§414-381] Dissolution by incorporators or initial directors. A majority of the incorporators or initial directors of a corporation that has not issued shares or has not commenced business may dissolve the corporation by delivering to the department director for filing articles of dissolution that set forth:
(1) The name of the corporation;
(2) The date of its incorporation;
(3) Either:
(A) That none of the corporation's shares has been issued; or
(B) That the corporation has not commenced business;
(4) That no debt of the corporation remains unpaid;
(5) That the net assets of the corporation remaining after winding up have been distributed to the shareholders, if shares were issued; and
(6) That a majority of the incorporators or initial directors authorized the dissolution. [L 2000, c 244, pt of §1]


MSP CCS Spreadsheet Tester
Users Guide
Factsheet – Provides an overview of the MSP CCS_Spreadsheet Tester
About
Features
Java GUI – Describes how to use the MSP CCS_Spreadsheet Tester Java GUI
Run
Convert Coordinates
Man Page – Describes how to run the MSP CCS_Spreadsheet Tester from a command line
Name
Synopsis
Description
Operands
Input File
Output File
Results
Example


Being an Engineer
After qualifying with a good rank in the West Bengal joint entrance exams, i got myself admitted to Academy of Technology.During my stay here for the past two years, i have been trying to upgrade myself with the latest technologies in the field of engineering and technology.I have become profficient in languages like C, python,Java. My other interests include web development which i have been focussing mainly upon apart from my curricular activities.
I also have a basic understanding of machine language.Adding to this i also participate in online coding competitions on platforms like codechef,codeforces,hackerrank.Throughout all the semesters till date i have maintained an appreciable score of 9 point.This life is another phase which has taught me to apply what i had learnt till date for serving people.


Privacy Policy
Your privacy is important to us and we are committed to protecting your privacy. So weâ€™ve developed a Privacy Policy. Please take a moment to familiarize yourself with our privacy practices and let us know if you have any questions.
PERSONAL INFORMATION
Personal information is data that can be used to uniquely identify or contact a single person.
We do not collect, store or use any personal information while you visit, download or upgrade our website or our products, excepting the personal information that you submit to us when you create a user account, send an error report or participate in online surveys and other activities.
Only for the following purposes that we may use personal information submitted by you: help us develop, deliver, and improve our products and services and supply higher quality service; manage online surveys and other activities youâ€™ve participated in.
In the following circumstances, we may disclose your personal information according to your wish or regulations by law:
(1) Your prior permission;
(2) By the applicable law within or outside your country of residence, legal process, litigation requests;
(3) By requests from public and governmental authorities;
(4) To protect our legal rights and interests.
NON-PERSONAL INFORMATION
Non-personal information is data in a form that does not permit direct association with any specific individual, such as your Android ID, CPN model, memory size, your phone IMEI number, phone model, rom, installed application name and package name, phone operator, location, install, uninstall, frequency of use, etc.
We may collect and use non-personal information in the following circumstances. To have a better understanding in userâ€™s behavior, solve problems in products and services, improve our products, services and advertising, we may collect non-personal information such as installed application name and package name, the data of install, frequency of use, country, equipment and channel.
If non-personal information is combined with personal information, we treat the combined information as personal information for the purposes of this Privacy Policy.
PROTECTION OF PERSONAL INFORMATION
We take precautions â€” including administrative, technical, and physical measures â€” to safeguard your personal information against loss, theft, and misuse, as well as against unauthorized access, disclosure, alteration, and destruction.
When you use some products, services, or post your comments, the personal information you share is visible to other users and can be read, collected, or used by them. You are responsible for the personal information you choose to submit in these instances. Please take care when using these features.
OUR COMPANYWIDE COMMITMENT TO YOUR PRIVACY
To make sure your personal information is secure; we communicate our privacy and security guidelines to all employees and strictly enforce privacy safeguards within the company.
STAMENT
Our apps provides a charging lock screen to replace your original lock screen when you charge up your mobile. If you want your original lock screen back, you can cancel the charging lock screen by clicking on the button that is at the top right-hand corner of it.
PRIVACY QUESTIONS
If you have any questions or concerns about our Privacy Policy or data processing, please contact us.
We may update Privacy Policy from time to time. When we change the policy in a material way, a notice will be posted on our website along with the updated Privacy Policy.


@fluffypony @BizMunny @H3R3TiKAL @NodeRohan @chainalysis @zooko Thanks, means a lot to me! Who gets to define responsible? Have you seen the fight of Google/Apple with Project Zero? I respect you fluffy, but also, I retired from infosec before you ever dreamed of making a ...


Buy quality poultry products at the comfort of your home
Contact Now
We sell quality day old chicks( broiler, noiler, pullet, cockerel, guinea fowl, duck, etc.) from different hacthery (sources) .
We sell broilers which are ready for consumption.
Large quality ducks are available in our stock, also ready for consumption or can be kept has pet.
Ready for consumption turkeys are available in our stock .
We have unlimited amount of ready to lay and already laying pullets which are fed with quality feeds.
Get your meaty noilers at our most reliable farms. Enjoy the unfatty meat and crushable bones of this noilers
Cockerel has one of the most delicious meat. Get your enjoyable cockerels from us.


This matches ImageJ convention when looking at the data. For instance looking at the 100th slice of the foam data set:
When writting 2d images such as tif, jpg or png, out of a numpy array one may use existing function from matplotlib.pyplot, scipy.misc, etc... but careful checking needs to be done to remain consistent since pyplot assume a (y,x) array when plotting, writting, reading images.. This recipe demonstrate how to use the pyplot module to write / read 2d images. For other format than PNG, pyplot uses PIL under the hood so this should work with PIL as well.
Get the complete Python source code: convention_read_write_2d_images.py
In this example we use the foam 3d dataset with size 250x250x250. First you need to define the path to the 3d volume:
data_dir = '../../examples/data'
scan_name = 'mousse_250x250x250_uint8'
scan_path = os.path.join(data_dir, scan_name + '.raw')
Then load the volume in memory thanks to the :pymicro:file:file_utils:HST_read function. The zrange option is used here to load only the 100th slice.
vol = HST_read(scan_path, autoparse_filename=True, zrange=range(100,101))
The slice is saved as a raster image (eg. png or jpg) using pyplot imsave function:
plt.imsave('%s.%s' % (scan_name, ext), np.transpose(vol[:,:,0]), cmap=cm.gray)
The 2d image can now be loaded into memory as a numpy array using pyplot imread function:
im = np.transpose(plt.imread('%s.%s' % (scan_name, ext))[:,:,0])
Note that imsave write png image as 4 RGBA (red, green, blue, alpha) using floatting point numbers between 0 and 1. Here we have selected only the first channel (R) since in gray level images R=G=B. To compare with our initial raw image we may just re-transforming it to 8 bits (between 0 and 255):
im_uint8 = (255*im).astype(np.uint8)
We can print some of the pixel value to verify the data is well ordered in memory:
print 'in raw data: pixel value at [124,108] is %d, at [157,214] is %d' % (vol[124,108,0], vol[157,214,0])
print 'in 2d image: pixel value at [124,108] is %d, at [157,214] is %d' % (im_uint8[124,108], im_uint8[157,214])
Finally the data is compared using imshow both on the raw data and the numpy array read from the 2d image and plotting a profile along x:
plt.imshow(np.transpose(vol[:,:,0]), cmap=cm.gray)
plt.imshow(im.T, cmap=cm.gray)
plt.plot(vol[:,108,0], label='raw data')
plt.plot(im_uint8[:,108], label='%s image' % ext)
Everythings lloks in order, the changes in terms of values along x are normal since pyplot renormalize the data between 0 and 1 to write the png image (to minimize the loss of information).
In summary, 3d volumes are handled via (x,y,z) 3d numpy arrays in pymicro, pyplot assume a (y,x) array when plotting, writting, reading images. So if you care about having everything consistent you must transpose the arrays passed to pyplot.


class UCSchema
#include "ucschema.h"
Overview
The static methods within the UCSchema class provides a means to evaluate a given UniversalContainer and determine if it meets a pre-defined set of criteria. These criteria specify the type of the data held by the container, and the possible values it may take on. Two key ideas are helpful in understanding these functions. The first is the notion of a contract, which defines the constraints which a particular UniversalContainer must satisfy. The second is the notion of a schema, which is a contract which has been bound to an identifying name and stored within the global library. To use the UCSchema functions, you define a set of schema using a simple language, and then add them to this global library. You may then check UniversalContainers against these schema by name.
An Example Schema
Describing a Contract
A schema is described in as a block of formated plain text, which is then sent to one of the add_contract_to_library methods to add the schema described to the global library. A schema always has the form: schemaname ==> contract where schemaname is an identifier and contract is a valid contract as described below. Valid identifiers are formed by an alphabetic character followed by one or more alpha-numeric characters. Contracts are a combination of type information and constraints that must be meet by an object, and can specify scalars, dictionaries, or arrays as described below. Contracts may describe scalar data, map objects, or arrays of objects. They may also describe a group of possible contracts, satisfying any one of which will cause the contract to be satisfied. Additional, each contract may have an optional tag, identifying data which must match a provided symbol table.
Scalar Contracts
A scalar contract describes a contract on a scalar data type or a string. These contracts consist of a keyword that declares the type, and an optional restriction on the possible values that the data may take on specified in parentheses.
| Contract | Notes |
|---|---|
| integer(MIN:MAX) | The integer keyword specifies that the data under consideration must be of type Integer. If parentheses are present, then one or both of MIN and MAX must be specified. If only one value is specified it is interpreted as the minimum value for the data, unless it is preceded by a colon (:), in which case it is interpreted as a maximum value for the data. |
| real(MIN:MAX) | The real keyword specifies that the data under consideration must be of type Real. If parentheses are present, then one or both of MIN and MAX must be specified. If only one value is specified it is interpreted as the minimum value for the data, unless it is preceded by a colon (:), in which case it is interpreted as a maximum value for the data. |
| character(MIN:MAX) | The character keyword specifies that the data under consideration must be of type Integer. If parentheses are present, then one or both of MIN and MAX must be specified. If only one value is specified it is interpreted as the minimum value for the data, unless it is preceded by a colon (:), in which case it is interpreted as a maximum value for the data. For a character, valid minimum and maximum values are un-escaped characters. |
| boolean(true | false) | The boolean keyword specifies that the data under consideration must be of type boolean. If parentheses are present, then the literal "true" or "false" must also appear to constrain the value to one of those two values. This feature is intended to be used with group contracts (explained below), which allow for a schema to be satisfied if a particular data item conforms to one of several different sub-schema. |
| string(regex) | The string keyword specifies that the data under consideration must be of a string. If parentheses are present, then they must contain a regular expression which the string must match in order to satisfy the contract. The underlying regex checking is done using the system regex routines described in regex.h, see man regex and re_format for a description of the dialect. |
Map Contracts
A map schema specifies constrains on a map. Fields where the key value is separated from the contract by a colon are required and must appear in order for the contract to be satisfied. Fields where the key value is separated by the contract by a question mark are optional. They do not have to appear, but if they do they must satisfy the contract. The order in which fields appear does not matter. Key values are double quoted strings. A map schema takes the form : { "required_key" : contract, "optional_key" ? contact ... }
Array Contracts
Array contracts allow for a variety of constraints to be placed on an array and its contents, expressed as a series of sub-contracts. The #type contract specifies a contract that all elements must satisfy. The #exists contract specifies a contract that must be satisified by at least one element of the array. The #size contract must be an integer contract, and it applied to the number of elements in the array, rather than the contents. It also possible to place constraints on particular elements of an array. Instead of one of the preceding keywords, a contract may be associated with an integer. The contract is then applied to that zero-indexed position in the array.
An array contract takes the form [ #type: contract, #size: integer contract, #exists: contract integer : contract ]Object Schema
static void UCSchema::add_contract_to_library(Buffer* buf)
static void UCSchema::add_contract_to_library(char* str)
These functions parse a contract described in the passed data, and add it to the global contract library.
static unsigned compare(std::string const& contract, const UniversalContainer&)
static unsigned compare(std::string const& contract, const UniversalContainer&,
UniversalContainer& symbol_table)
Compares the container uc against the named contract, and returns 0 if uc matches the contract. A non-zero return value indicates one or more violations of the contract; depending on which bits of the return code are set. Note that in the case of arrays and maps, there is no indication of which element caused a particular flag to be set, and there may be multiple violations of the same type. The following table details the various masks which can be ANDed with the return code to determine which errors occurred.
If symbol_table is provided, it must be a map or null. If any values of the map are set any tagged contracts within the schema are checked against those values. Other tagged values are inserted into the map.
| ucc_NO_SUCH_TYPE | No type with the name given by contract has been registered with the library. |
| ucc_IMPROPER_TYPE | The container or one or more of its elements has the wrong data type. |
| ucc_CONSTRAINT_VIOLATION | The value of the container violates the constraints specified in the contract. This is also the flag that signals an array that has violated its size constraints, or for which some element has violated that exists constraint. |
| ucc_EXTRA_MAP_ELEMENT | A map contains one or more elements that are not specified in as required or optional. |
| ucc_MISSING_REQUIRED_MAP_ELEMENT | A map is missing an element that is marked as required. |
| ucc_MISSING_REQUIRED_ARRAY_ELEMENT | An array does not contain an element that is specified in the exists constraint. |
| ucc_STRING_DOES_NOT_MATCH | Some string does not match the given regex expression. |
static void compare_and_throw(std::string const& contract,
const UniversalContainer& uc,
unsigned conditions = 0XFFFFFFFF)
static void compare_and_throw(std::string const& contract,
const UniversalContainer& uc,
UniversalContainer& symbol_table,
unsigned conditions = 0XFFFFFFFF)
These functions operate similar to the corresponding compare functions, but instead of returning a value they will throw an exception. This exception will be a map type, with two keys. The key compare_results contains the value that would have been returned by compare. The key violations contains an array of strings explaining the various errors.
The conditions field is ORed with the results of the compare. If the results are non-zero the exception is thrown. This can be used to allow some conditions, such as the presence of extra map elements, to not throw an exception.
| Type / Constraint |
Value | |
|---|---|---|
| boolean | Contract matches a UC holding a boolean value. | |
| character | Contract matches a UC holding a character. | |
| string | Contract matches a UC holding a string. | |
| regex | A regular expression the string must match. Uses regexec from the standard C library. | |
| integer | Contract matches a UC holding a character. | |
| lower_bound | The smallest integer value that the UC may take on. | |
| upper_bound | The largest integer value that the UC may take on. | |
| real | Contract matches a UC holding a real (float/double). | |
| lower_bound | The smallest real value that the UC may take on. | |
| upper_bound | The largest real value that the UC may take on. | |
| map | Contract matches a UC holding a map. | |
| required_members | Must map to another map. Each member of this map is a map between a string and another map specifying a contact. The map being checked must contain each of the specified keys, and each key must conform to the contract given for that key. | |
| optional_members | Must map to another map. Each member of this map is a map between a string and another map specifying a contact. The map being checked must may contain of the specified keys, and each key must conform to the contract given for that key if it appears. It is not a violation of the contract if some optional member does not appear. | |
| array | Contract matches a UC holding an array. | |
| size | Specifies a contract of type integer. The size of the array must match the bounds given in the contract. | |
| forall | Specifies a contract which every member of the array must satisfy. | |
| exists | Specifies an array of contracts. For each element of this array, the matched container must contain an element matching the given contract. Note that an element may match multiple entries in the exists array. | |
| User Defined | If the type is not one of the types listed above, it is treated as a user defined type. User defined types are checked against the internal type library. See the method add_to_library. |
UCSchema allows for the definition of user types. If the provided type type parameter is not one of the values listed above, UCSchema consults a hidden, library of named UCContact objects for a match. If a match is found the contract object will reference that contrat when doing compare operations. The library is initially empty, but types can be added to the library with the static method add_to_library. Note that the reference to the type library is established when the contract is constructed, not during the comparision. If you have a contract that references another contract by name you must add the named contract to the library before you do the comparison. Circular references are not possible.
When a contract is created any required regex is compiled and saved for later use. Otherwise, creating a new instance of UCSchema is not terribly expensive. However, in most cases it will involve deserializing the UniversalContainer describing the contract; most likely from some JSON source. This can be expensive, especially if it involves an I/O operation.
Recommended usage of UCSchema is to do all loading of contracts that will be needed during a programs lifetime at once, adding each one to global contract library with add_to_library. Then, during program operation, use the provided static methods to check objects against contracts by their named types.
UCSchema conforms to the UniversalContainer metadata contract, and ignores any field in a map which begins with a hash mark (#).
Example
Below is an example of a contract description in JSON, showing how to use the various elements. To use a contract like this, you would first deserialize the JSON to a UniversalContainer using uc_decode_json, and then pass the resulting UC to the constructor for a UCSchema object.
{ "type" : "map", "required_members" : { "name" : { "type" : "string", "regex" : "[A-Z][a-z]*\\ [A-Z][a-z]" }, "age" : { "type" : "integer", "lower_bound" : 18 }, "manager" : { "type" : "boolean" }, "sex" : { "type" : "character" }, "email" : { "type" : "string", "regex"<EMAIL_ADDRESS>} }, "optional_members" : { "dependents" : { "type" : "array", "size" : { "type" : "integer" "upper_bound" : 8 }, "forall" : { "type" : "map", "required_members" : { "name" : { "type" : "string", "regex" : "[A-Z][a-z]*\\ [A-Z][a-z]" }, "age" : { "type" : "integer", "lower_bound" : 0, "upper_bound" : 17 } } }, "exists" : [{ "type" : "map", "required_members" : { "name" : { "type" : "string", "regex" : "[A-Z][a-z]*\\ [A-Z][a-z]" }, "age" : { "type" : "integer", "lower_bound" : 5, "upper_bound" : 5 } } }] }, "salary" : { "type" : "real", "lower_bound" : 25000.0, "upper_bound" : 250000.0 } } }
Below is an example of some data that this contract matches without errors; again given in JSON format.
{ "name" : "John Smith", "age" : 35, "email"<EMAIL_ADDRESS>"dependents" : [ { "name" : "Jr Smith", "age" : 10 }, { "name" : "Sue Smith", "age" : 7 }, { "name" : "Sally Smith", "age" : 17 } ], "sex" : "M", "manager" : false }
Constructor
UCSchema(UniversalContainer& uc)
Creates a new UCSchema object from the description provided by the UniversalContainer uc. See explanation above.
Methods
unsigned compare(const UniversalContainer& uc) const
static unsigned compare(std::string const& type, const UniversalContainer& uc) const
Compares the container uc against the contract, and returns 0 if uc matches the contract. A non-zero return value indicates one or more violations of the contract; depending on which bits of the return code are set. Note that in the case of arrays and maps, there is no indication of which element caused a particular flag to be set, and there may be multiple violations of the same type. The following table details the various masks which can be ANDed with the return code to determine which errors occured.
The static version compares a container against a named type previously added to the contract library with add_to_library. If the named type does not exist in the library the result is ucc_IMPROPER_TYPE.
| ucc_IMPROPER_TYPE | The container or one or more of its elements has the wrong data type. |
| ucc_CONSTRAINT_VIOLATION | The value of the container violates the constraints specified in the contract. This is also the flag that signals an array that has violated its size constraints, or for which some element has violated that forall constraint. |
| ucc_EXTRA_MAP_ELEMENT | A map contains one or more elements that are not specified in as required or optional. |
| ucc_MISSING_REQUIRED_MAP_ELEMENT | A map is missing an element that is marked as required. |
| ucc_MISSING_REQUIRED_ARRAY_ELEMENT | An array does not contain an element that is specified in the exists constraint. |
| ucc_STRING_DOES_NOT_MATCH | Some string does not match the given regex expression. |
void compare_and_throw(UniversalContainer&, unsigned = 0XFFFFFFFF) const
static void compare_and_throw(std::string const& name, UniversalContainer&, unsigned = 0XFFFFFFFF) const
This method calls compare on the given container, and performs an or operation between the mask and the result of the compare operation. If the final result is non-zero then a UniversalContainer is thrown as an exception. The resulting exception has the code key set to uce_ContractViolation, and the key compare_result set to the value of the compare operation ored with the mask. The key violations maps to an array of strings containing the same messages produced by the error_messages method.
The static version compares a container against a named type previously added to the contract library with add_to_library. If the named type does not exist in the library the result is ucc_IMPROPER_TYPE.
static std::vector <const char*> error_messages(unsigned result)
When passed a result code, this method will return a vector of error messages in English matching the flags sets in the result. This is a utility method to make debugging easier.
static void add_to_library(std::string const& name, UniversalContainer& contract);
This static method adds the contract defined by the container contract to the global type library. It causes a new contract to be created, but this contract is stored in the library rather than being returned to the user. Calling this method with the a name previously added to the library will replace previous entry in the library and delete the previous contract. This will break any currently existing contracts that reference the old entry; and seg faults are likely to follow.


For compatibility with other libraries in the ecosystem, Pantomime's dispatchers can serve as a Tokio Executor.
Tokio integration is provided by the tokio-support feature, which must be enabled in Cargo.toml.
Hyper is an HTTP library for the Rust language. Refer to the Hyper example to see how you can combine Pantomime's Tokio support with Hyper to provide an HTTP interface to your applications.
[set title Tokio / Integration / Pantomime] [set doc-section integration-tokio] [stash doc-content][require raw ../_layout.html]


Lira Apps Suite
A complex suite of web apps: Analytics, Offers, Scheduler, Delivery doing one thing and one thing only: sending email campaigns.
--- layout: default title: Lira Web Apps Suite subtitle: Lira Media section: work permalink: /lira/ ---
Lira Media is an unique concept of email marketing. Designed not only to delight the receiver of promotions, but also the marketer.
The main responsibilities for the project were: design direction, interface, workflows, implementation of the layout using latest web technologies. The responsive design was created for a few Django powered web apps.
A complex suite of web apps: Analytics, Offers, Scheduler, Delivery doing one thing and one thing only: sending email campaigns.


{% extends 'templates/nhs_transaction_layout.html' %} {% block pageTitle %}NHS.UK prototyping kit{% endblock %} {% block content %} Back Item 4 from prescription 5261754 Item disallowed Reason: This is a reason {% endblock %}
Reason: This is a reason


Toggle navigation
Praveen Manchi
Home
About Me
Design's
Portfolio's
Reach Me
UI/UX DESIGNES
I concept, design, and deliver best-in-class products and websites. Beyond visuals and user interfaces, I craft user journeys that bring delight to people and solve complicated problems.


- My name is Malek Al-Rashedat, from Irbid. I am 27, I have a Bachelor’s degree in Civil Engineering from Yarmouk University. I worked in several fields, the last was in the Emirates as a teacher of the Holy Quran. I am very happy to be with you and to have benefited from the knowledge that you offer.
- I have the ability to program in Python Currently, I'm learning (CSS, HTML, JS) I will strive to be one of the best soon.
Top ten favourite Youtube Channels: