Hi there! I'm Dylan Wilson. This is my personal site. If you are looking for one of my projects, please visit my GitLab.
I'm a Software Engineering student at Queen's University Belfast. Prior to my starting my course I began writing programs in PHP and then started using Java. While I have the time outside of my course I develop responsive website using mainly the Laravel framework for the backend and Bootstrap and jQuery for the frontend. You can see some of my work in the portfolio section of this site.
As well as developing software I also enjoy practicing systems administration and I've set up some basic services on my Ubuntu server including Apache (including TLS), MariaDB (a MySQL drop-in replacement), PHP, FTP & SSH and GitLab. In fact, I'm hosting both this site and my personal GitLab on my own server.
Aside from computing, I also really enjoy music listening to generally rock and punk music such as Biffy Clyro, Fall Out Boy, Panic! At the Disco and Queen to name but a few.
Last updated: 6th February 2020Java is where I spend most of my time, I enjoy developing using Java and use it to develop enterprise applications.
I regularly use PHP, mainly Lavavel but sometimes vanilla PHP too. This allows me to quickly develop highly-functional websites without needing to reinvent the wheel!
I use HTML and CSS to develop websites, I mainly use Bootstrap when developing websites as this allow me to quickly develop reponsive sites—in fact, this site is developed using Bootstrap too!
I often want to add some additional functionality to the websites I produce so I use Javascript to add features I couldn't add through HTML and CSS.


About Me
Hello! I'm Wong Liang Zan or simply Zan for short. I'm a computer geek living in Singapore. When I'm not with a computer, I like to read, do some sports or spend time with my family.
My favourite authors are Milan Kundera and Kurt Vonnegut.
I'm currently I used to be using an old thinkpad x200 with Arch Linux. I usually use a combination of urxvt, tmux, xmonad and emacs in my work. However I tend to prefer vim on the shell as they start up faster.
I'm now on a Macbook Pro as my old Thinkpad has gone *kaput*. My feelings echo that of antirez. Linux is better for coding. I miss xmonad. I'll be back on Linux some day.
Before my kids came, I used to volunteer regularly at Minds Youth Group. Do join them and bring some shine to the lives of the less priviliged.
I'm also a big football fan of Manchester United.
As you can see, I don't have a lot of hair. If you're losing your hair like me, shave it! Life is too short to be spent fretting about how thin your hair is. Stop hiding! Your hair is not coming back. Say no to rugs, drugs and plugs.
Professional Work
Having worked for a number of years from startups to enterprises means I've amassed a wealth of experience in building products and managing teams. I'm currently the co-founder of Propine, a startup that provides securities services for institutions to manage their digital assets.
I've also written an ebook on XPath. The state of documentation for XPath could be better, and here's my contribution towards it.
I'm always open to new opportunities. If there is something I can do for you, feel free to reach me.
If you are looking for a designer, look no further. My sister does that for a living.


The world needs automation and I am here to help!
“My name is Vincent Wu and I am a fourth year Math-Computer Science major at the University of California, San Diego with minors in Cognitive Science and History. As the technology in society is advancing, the need of automation becomes increasingly desired; this is quite evident in the power of mobile applications. To confront and contribute to this desire, I am pursuing an education and career that seeks to further my knowledge and allow me to invent modern solutions. Whatever tasks and problems that await us, I am determined to find an optimal solution.”


Toggle navigation
Please check your email to verify your Phagebook account.
If you did not receive a verification email, click the button below to resend it.
Resend Verification


There are five valid directives: MARK, CLEAR, PRESET, START, and STOP. The MARK directive forces the CAD state machine into state 1. This directive is also executed through special processing if any of fields A through T are modified. The CLEAR directive forces the state machine into state 0, clearing any prior mark or preset. The PRESET directive moves the state machine from state 1 to state 2. The START directive either moves the state machine from state 2 to state 0, or executes a PRESET directive then moves from state 2 to state 0. In all cases except PRESET, START, and STOP in state 0 the processing subroutine SNAM is called and the corresponding directive link is processed.
The CAD record can be in one of three states, given by the value of
the MARK field. In state 0, the CAD record is considered to be cleared.
In state 1, it is considered to be marked as ready to preset. In state
2, it is considered to be preset and ready to activate. Figure 1 shows
the state diagram for the CAD record, with the edges identified as possible
directive commands.
FIGURE 3.1 CAD Record state transition diagram
|
Field
|
Type
|
DCT
|
Initial
|
Access
|
Modify
|
Rec Proc Monitor
|
PP
|
|---|---|---|---|---|---|---|---|
|
VAL
|
LONG
|
No
|
0
|
Yes
|
No
|
Yes
|
No
|
|
SNAM
|
STRING
|
Yes
|
Null
|
Yes
|
No
|
No
|
No
|
|
SADR
|
LONG
|
No
|
0
|
No
|
No
|
No
|
No
|
|
STYP
|
SHORT
|
No
|
0
|
Yes
|
No
|
No
|
No
|
|
INAM
|
STRING
|
Yes
|
Null
|
Yes
|
No
|
No
|
No
|
|
DIR
|
RECCHOICE
|
Yes
|
1
|
Yes
|
Yes
|
No
|
Yes
|
|
ICID
|
LONG
|
No
|
0
|
Yes
|
Yes
|
No
|
No
|
|
MESS
|
STRING
|
No
|
Null
|
Yes
|
Yes
|
Yes
|
No
|
|
OMSS
|
STRING
|
No
|
Null
|
Yes
|
Yes
|
No
|
No
|
|
CTYP
|
SHORT
|
Yes
|
2
|
Yes
|
No
|
No
|
No
|
|
PREC
|
SHORT
|
Yes
|
0
|
Yes
|
Yes
|
No
|
No
|
|
MLNK
|
FWDLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
CLNK
|
FWDLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
PLNK
|
FWDLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
STLK
|
FWDLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
SPLK
|
FWDLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
OCID
|
LONG
|
No
|
0
|
Yes
|
Yes
|
Yes
|
No
|
|
OSIM
|
RECCHOICE
|
No
|
None
|
Yes
|
Yes
|
Yes
|
No
|
|
NARG
|
SHORT
|
Yes
|
0
|
Yes
|
Yes
|
No
|
No
|
|
MARK
|
SHORT
|
No
|
0
|
Yes
|
Yes
|
Yes
|
No
|
|
ERSV
|
GBLCHOICE
|
Yes
|
0
|
Yes
|
Yes
|
No
|
Yes
|
|
SIOL
|
INLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
SVAL
|
LONG
|
No
|
0
|
Yes
|
Yes
|
No
|
No
|
|
SIML
|
INLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
SIMM
|
RECCHOICE
|
No
|
None
|
Yes
|
Yes
|
No
|
No
|
|
SIMS
|
GBLCHOICE
|
No
|
0
|
Yes
|
Yes
|
No
|
No
|
|
INPx
|
INLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
OUTx
|
OUTLINK
|
Yes
|
0
|
No
|
No
|
No
|
No
|
|
A - T
|
STRING
|
No
|
0
|
Yes
|
Yes
|
No
|
Spec
|
|
VALx
|
NOACCESS
|
Yes
|
0
|
Yes
|
Yes
|
No
|
No
|
|
FTVx
|
GBLCHOICE
|
No
|
String
|
Yes
|
No
|
No
|
No
|
|
Name
|
Summary
|
Description
|
|---|---|---|
|
VAL
|
Return Error Code
|
The return value is set within the user-supplied
processing subroutine. Conventionally, a return value of zero indicates
success, while a non-zero value shows an error has occurred.
|
|
SNAM
|
Subroutine Name
|
The name of a VxWorks subroutine to execute during
processing.
|
|
SADR
|
Subroutine Address
|
The internal representation of the subroutine address.
|
|
STYP
|
Subroutine symbol type
|
Not used.
|
|
INAM
|
Init Routine Name
|
The name of a VxWorks subroutine to execute during
initialization.
|
|
DIR
|
CAD Directive
|
The directive to execute. This may be one of the
following enumerated list values: MARK ,
CLEAR , PRESET
, START , or STOP .
|
|
ICID
|
Client ID (In)
|
An integer value to be associated with the current
command.
|
|
MESS
|
Message
|
A return message from the CAD. This string will be
empty if the return value is zero.
|
|
OMSS
|
Old Message
|
The previous message.
|
|
CTYP
|
Number of CAD Args
|
This value should be set to the maximum number of
arguments a CAD record will use. The value is usually set by the selected
CapFast symbol.
|
|
PREC
|
Display Precision
|
This value is used for the precision of double-precision
outputs.
|
|
MLNK
|
Mark Link
|
If the directive is MARK , this forward link
is processed.
|
|
CLNK
|
Clear Link
|
If the directive is CLEAR , this forward link
is processed.
|
|
PLNK
|
Preset Link
|
If the directive is PRESET , this forward
link is processed.
|
|
STLK
|
Start Link
|
If the directive is START , this forward link
is processed.
|
|
SPLK
|
Stop Link
|
If the directive is STOP , this forward link
is processed.
|
|
OCID
|
Client ID (Out)
|
The input client ID is sent out this field.
|
|
OSIM
|
Simulation Mode (Out)
|
The simulation mode is sent out this field.
|
|
NARG
|
No. Inputs used
|
The actual number of arguments used is set in this
field.
|
|
MARK
|
Is Record Preset?
|
This field shows the current state of the CAD. It
can be zero, indicating no MARK has been done; one, showing a MARK; or
two, showing a PRESET has been done.
|
|
ERSV
|
Error Alarm Severity
|
The severity of an alarm.
|
|
SIOL
|
Simulation Error Link
|
Simulation mode variables. Refer to reference (See
EPICS Input Output Controller Record Reference Manual, Janet B. Anderson
and Martin R. Kraimer, Argonne National Laboratory, Dec 1, 1994. , chapter
3).
|
|
SVAL
|
Simulation Error
|
|
|
SIML
|
Simulation Mode Link
|
|
|
SIMM
|
Simulation Mode
|
|
|
SIMS
|
Simulation Mode Alarm Severity
|
The value for the simulated alarm.
|
|
INPx
|
Input Link A-T
|
The 20 input links for the arguments to the record.
|
|
OUTx
|
Output Link A-T
|
The 20 outputs are sent across these links.
|
|
A - T
|
Value of Input A-T
|
The 20 string input arguments.
|
|
VALx
|
Value of Output A-T
|
The 20 output values.
|
|
FTVx
|
Type of Value A-T
|
The types for the 20 output values. The type may
be one of STRING , LONG , or DOUBLE .
|
FIGURE 3.2 CapFast ecad2, ecad4, ecad8, and ecad20 symbols


When Carol and I got together for the first time, I had no idea what to expect. She made me feel comfortable enough to invite into my messy closet – with clothes from the 90’s taking up a bunch of space. Carol went through my closet, helping me decide what to keep or donate. She also did a color test to show me what colors look best on me. And then she coordinated outfits using the clothes I already had and gave me a list of items to purchase to make the pieces work better with my current clothes. Shopping has now become fun and more intentional after this process…no more shopping for random pieces that don’t go with anything. And I even took a bunch of the clothes I wasn’t wearing to a consignment store and sold them.  Thank you for being so patient with me!
-Blanca
Carol's assistance has been invaluable and has helped me in so many ways. Where I used to feel hopeless about my appearance, I now know what looks flattering on me and how to put together outfits that bring out my best features. I'm saving money by no longer buying the wrong clothes that will just hang in my closet, and I leave the house feeling confident every day. I would recommend Carol to anyone who is ready to make a change in her style but doesn't know where to start. She is warm and approachable and makes the whole process fun, while helping you look your personal best.
-Cheryl
Carol's assistance has been invaluable and has helped me in so many ways. Where I used to feel hopeless about my appearance, I now know what looks flattering on me and how to put together outfits that bring out my best features. I'm saving money by no longer buying the wrong clothes that will just hang in my closet, and I leave the house feeling confident every day. I would recommend Carol to anyone who is ready to make a change in her style but doesn't know where to start. She is warm and approachable and makes the whole process fun, while helping you look your personal best.
-Wendy
I am amazed at the difference it makes to clear out a wardrobe and learn how to dress well with a few select outfits. Thoroughly recommended!
-Jennifer


I’m a UI/UX Designer, who loves clean, simple and unique design. I also enjoy crafting brand identities, icons and illustration work.
Here is what my client’s say about me and my work. I love my client’s and love to work with them.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Sit tempora nostrum ex unde illo est quam aliquid rem molestias iusto.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quasi ipsa, explicabo eius pariatur.


Welcome to the Greater Puget Sound Bus Mall
We are testing new products to see what peope prefer
To participate in a study to better our products, please select which product of the three displayed that you prefer. You will be given 25 choices and we will show your results at the end.


This edition has been revised, edited and curated by eLiburutegia, the Basque Government Public Library Platform, in collaboration with The New York Public Library, as part of the Recovering the Classics and the ConnectED iniciatives.
This edition of Moby Dick; or, The Whale is maintained, archived, and curated as part of the GITENBERG PROJECT.
This work is in the public domain.
See all details in the Copyrights section at the end of this ebook.


Time Complexity
Instead of asking, how much time does it take to run a function, in time complexity’s language, we ask how does the runtime of a function grow? To learn more about Big O notation and Time Complexity, please watch this excellent video.
Finding Time Complexity
- Find the fastest growing term
- Take out the coefficient
- \(O(1)\) - Swap two numbers.
- \(O(logn)\) - Search in a sorted array with binary search.
- \(O(n)\) - Search for a maximum element in an unsorted array.
- \(O(n*logn)\) - Merge Sort, Quick Sort, Heap Sort.
- \(O(n^2)\) - Bubble Sort.
- \(O(2^n)\) - Travelling Salesman Problem with Dynamic Programming.
- \(O(n!)\) - Travelling Salesman Problem with Brute Force Search.
Complexity Classes
- \(\text{P}\) - Polynomial
- One of the most fundamental complexity classes.
- Contains all decision problems that can be solved by a deterministic Turing machine.
- \(\text{P}\) is the class of computational problems that are efficiently solvable.
- Ex: sorting algorithms.
- \(\text{NP}\) - Non-deterministic Polynomial
- If we have a solution to a problem, we can verify this solution in polynomial time (by a deterministic Turing machine).
- For instance where the answer in Yes, have efficiently verifiable proofs of the fact that the answer is indeed yes.
- The complexity class \(\text{P}\) is contained in \(\text{NP}\).
- Most important question is \(\text{N}\) = \(\text{NP}\) is it true?
- Ex: Integer Factorization, Travelling Salesman Problem.
- \(\text{NP complete}\)
- A decision problem is \(\text{NP complete}\) when it is both in \(\text{NP}\) and \(\text{NP hard}\).
- Although any given solution to an \(\text{NP complete}\) problem can be verified in polynomial time, there is no known efficient way to locate a solution in the first place.
- We ususually just look for an approximate solution.
- Ex: Chinese Postman Problem, Graph Coloring, Hamiltonian Cycle.
- \(\text{NP hard}\)
- This is a class of problems that are at least as hard as the hardest problems in \(\text{NP}\).
- A problem H is \(\text{NP hard}\) when every problem L in \(\text{NP}\) can be reduced in polynomial time to H.
- As a consequence, finding a polynomial algorithm to solve any \(\text{NP hard}\) problem would give polynomial algorithms for all the problems in \(\text{NP}\).
- Ex: Halting problem.
Linked List
codelinked_list.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | # class to create a node that has data and pointer class node: def __init__(self, data=None): self.data = data self.next = None # class to create a linked list of nodes class linked_list: def __init__(self): self.head = node() def append(self, data): new_node = node(data) cur = self.head while cur.next != None: cur = cur.next cur.next = new_node def length(self): cur = self.head total = 0 while cur.next != None: total += 1 cur = cur.next return total def display(self): elems = [] cur_node = self.head while cur_node.next != None: cur_node = cur_node.next elems.append(cur_node.data) print(elems) def get(self, index): if index >= self.length(): print("ERROR: index out of range!") return None cur_idx = 0 cur_node = self.head while True: cur_node = cur_node.next if cur_idx == index: return cur_node.data cur_idx += 1 def erase(self, index): if index >= self.length(): print("ERROR: index out of range!") return None cur_idx = 0 cur_node = self.head while True: last_node = cur_node cur_node = cur_node.next if cur_idx == index: last_node.next = cur_node.next return cur_idx += 1 if __name__ == '__main__': my_list = linked_list() my_list.append(1) my_list.append(2) my_list.append(3) my_list.append(4) my_list.display() print("Element at 2nd index: {}".format(my_list.get(2))) my_list.erase(2) print("Elements after erasing element at index 2") my_list.display() |
1 2 3 4 | [1, 2, 3, 4] Element at 2nd index: 3 Elements after erasing element at index 2 [1, 2, 4] |
Bubble Sort
codebubble_sort.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | from random import randint # create randomized array of length "length" # array integers are of range 0, maxint def create_array(length=10, maxint=50): new_arr = [randint(0, maxint) for _ in range(length)] return new_arr #------------------------------------- # bubble sort algorithm to input array #------------------------------------- def bubble_sort(arr): swapped = True while swapped: swapped = False for i in range(1, len(arr)): if arr[i-1] > arr[i]: arr[i], arr[i-1] = arr[i-1], arr[i] swapped = True return arr if __name__ == '__main__': a = create_array() print(a) a = bubble_sort(a) print(a) |
1 2 | [37, 36, 13, 12, 43, 4, 32, 14, 32, 4] [4, 4, 12, 13, 14, 32, 32, 36, 37, 43] |
Merge Sort
codemerge_sort.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 | from random import randint # create randomized array of length "length"m # array integers are of range 0, maxint def create_array(length=10, maxint=50): new_arr = [randint(0, maxint) for _ in range(length)] return new_arr #------------------------------------- # merge sort to combine two arrays #------------------------------------- def merge(a,b): # final output array c = [] a_idx, b_idx = 0, 0 while a_idx<len(a) and b_idx<len(b): if a[a_idx]<b[b_idx]: c.append(a[a_idx]) a_idx += 1 else: c.append(b[b_idx]) b_idx += 1 if a_idx == len(a): c.extend(b[b_idx:]) else: c.extend(a[a_idx:]) return c #------------------------------------- # merge sort algorithm to input array #------------------------------------- def merge_sort(a): # a list of zero or one elements is sorted, by definition if len(a) <= 1: return a # split the list in half and call merge sort recursively on each half mid = int(len(a)/2) left, right = merge_sort(a[:mid]), merge_sort(a[mid:]) # merge the now-sorted sublists return merge(left,right) if __name__ == '__main__': a = create_array() print(a) s = merge_sort(a) print(s) |
1 2 | [45, 8, 25, 1, 32, 37, 34, 3, 4, 3] [1, 3, 3, 4, 8, 25, 32, 34, 37, 45] |
Quick Sort
codequick_sort.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | from random import randint # create randomized array of length "length"m # array integers are of range 0, maxint def create_array(length=10, maxint=50): new_arr = [randint(0, maxint) for _ in range(length)] return new_arr # quick sort algorithm to input array def quick_sort(a): # a list of zero or one elements is sorted, by definition if len(a) <= 1: return a # list to hold values based on pivot smaller, equal, larger = [], [], [] # choose a random pivot element pivot = a[randint(0,len(a)-1)] # iterate over each element and compare with pivot for x in a: if x<pivot: smaller.append(x) elif x==pivot: equal.append(x) else: larger.append(x) # recursively quick sort sub list and concatenate return quick_sort(smaller) + equal + quick_sort(larger) if __name__ == '__main__': a = create_array() print(a) s = quick_sort(a) print(s) |
1 2 | [3, 27, 12, 8, 12, 39, 1, 2, 23, 8] [1, 2, 3, 8, 8, 12, 12, 23, 27, 39] |
In case if you found something useful to add to this article or you found a bug in the code or would like to improve some points mentioned, feel free to write it down in the comments. Hope you found something useful here.
Happy learning!


| Created: | 8/19/2020 1:15:02 PM |
| Modified: | 8/19/2020 1:15:02 PM |
| Project: | |
| Advanced: |
| Attribute |
|
Public bigint spa_number_id |
|
Details:
|
|
Public varchar(255) spa_number_spa_number |
|
Details:
|
|
Public varchar(255) spa_number_home_type |
|
Details:
|
|
Public timestamp with time zone(0) created_at |
|
Details:
|
|
Public bigint created_by_user_id |
|
Details:
|
|
Public varchar(255) created_by_user_sub |
|
Details:
|
|
Public varchar(255) created_by_user_first_name |
|
Details:
|
|
Public varchar(255) created_by_user_last_name |
|
Details:
|
|
Public varchar(255) created_by_user_email |
|
Details:
|
|
Public timestamp with time zone(0) updated_at |
|
Details:
|
|
Public bigint updated_by_user_id |
|
Details:
|
|
Public varchar(255) updated_by_user_sub |
|
Details:
|
|
Public varchar(255) updated_by_user_first_name |
|
Details:
|
|
Public varchar(255) updated_by_user_last_name |
|
Details:
|
|
Public varchar(255) updated_by_user_email |
|
Details:
|
|
Public timestamp with time zone(0) start_date |
|
Details:
|
|
Public timestamp with time zone(0) end_date |
|
Details:
|
|
Public bigserial ods_id |
|
Details:
|
|
Public jsonb ods_meta |
|
Details:
|
|
Public varchar(255) ods_created_by |
|
Details:
|
|
Public timestamp with time zone(0) ods_created_at |
|
Details:
|
| Operation | ||
|
Public spa_numbers_pkey( ods_id: bigserial, |
||
|
Details:
<<PK>>
|
| Tag | Value |
| Owner | public |
|
Details:
|
| Property | Value |
| isFinalSpecialization: | 0 |
| Object | Type | Connection | Direction | Notes |
| «view» current_spa_numbers_view | View | Dependency | From |


Intro
Greetings! What follows is an intereview I did with the “Inspired Business Interview: Thinking Big” group leading up to an adress that I made to John Corroll University in 2021 as part of their “Thinking Big” series on how to help leaders build nad grow their ideas to leverage both Arificial Intelligence and the Internet of Things. Two areas where I have many years of experience in helping compaines execute their vision.
I had an amazing time presenting both to JCU, but also going through an interview with the folks at the Boler College of Business and Elliance to help formulate the qurestions and build an intersting topic of discussion with myself, our team and others in the industry looking at ways to builid AIoT into their organization.
Let’s begin with some of the questions brought to me by Todd and Noori at Eliance on some of my perspectives on AI/ML and how it works with IoT.
- Could you please give a quick explanation of the logic underpinning machine learning?
Justin: Rather than traditional programming that deals with
INPUT: Data and Rules and OUTPUT: Answers
You now with Machine learning have a case where you feed it
INPUT: Answers and Data and OUTPUT: Rules (model)
Which you then can use for prediction in future problems.
There are supervised and unsupervised learning: Supervised is where everything is TAGGED – here’s a cat, a dog, etc
UNSUPERVISED is where you give the computer all sorts of data and it ried to cluster/figure out what specific features are common.
Example: Creative writing by computers, generation of video. GENERATIVE TASKS. Learn how to play chess without having to program all of the moves.
- What are some basic things everyone should know or understand about machine learning and AI?
This beign a very broad and over reaching question. Here’s some initial thoughts that I would like you to take away.
- It’s not magic.
- It’s becoming easier for everyone to do every day.
- It all comes down to the amount of data that you have and there are large well known data sets out there.
- It’s not giving definitive answer. It’s all probabilities.
- The hardest part if tagging and labeling the data.
-
The data we have today when it comes to speech and images has bias built-in. Amazon hiring tool used historical data on resumes to screen for new candidates and since most were all men it filtered out women. Voice recognition is another.
- What AI and machine learning trends are you most excited about?
There’s lots to be excited about! Here’s a few just to name:
- Creative writing / text generation. GPT-3
- Self driving cars.
-
Better prediction on when things will fail in our home.  You furance ordered it.
-
What are some benefits of AI and machine learning that aren’t often discussed?
- How it can take away many of the MUNDANE jobs that humans do these days. Far too often there is focus on it taking away jobs rather than complementing how they can work together.
-
Farming & Medicine – better results by a machine filtering over the simages or driving the tractor.
- What are some of the most common ways that AI and machine learning improve basic day-to-day business functions? How do you see this expanding over the next 5 years? 10 years?
- Automation for sure. More and more factories will be able to use data to run more efficiently
- CONSUMER ENGAGEMENT – Better understand how consumers use their appliances, products and services in the field to understand patterns and build better services.
- Voice applications – already seeing asking of questions in home
- 10 years – Apple Watch & Futness trackers with data going to your doctor in realtime and seeing health issues before you even recoginize them.
- Does this vary between startups vs. large enterprises? Yes - in some ways. Cost to bring these products to market can be millions of dollars. However large companies are stuck with existing customers that don’t want these technologies yet. Read: Crossing the Chasm or the Innovators Dilemma. These are started by small companies and. Then acquired by others.
- How important is it for those in business roles that aren’t necessarily technical to understand AI models, tools, and capabilities in this changing landscape?
- Very Important if you and your business are going to remain competitive.
- Think of the dawn of the Internet, no one had a website. Now you need one. Same thing with AI/IoT and analysis.
- How can AI and machine learning improve the following functional areas: finance, supply chain, accounting, planning/forecasting, M&A?
- Finance – better prediction of planning models. Hand done statistical regression models can take time
- Supply chain – Just in time delivery
- Accounting – Looking at where to best place your financial assets for the best return
- M&A – Should your company merge with another company – can use interviews with employees and sentiment analysis to see if there’s a good fit.
- Are there specific industries where these emerging technologies carry more weight? What is one area/sector/industry that you see AI expanding into in the next 5 years?
- Anything that has a high value asset will come first
- Healthcare
- Finance
- Food Production
- Anything that has a high value asset will come first
- Can you address the fear that people have about the implications of AI on the job market? Why should the layperson not be afraid of AI?
- We have gone through these revolutions before and humans have adapted to it.
- Horse to Car. Agriculture to Industrial.
- Look at something as simple as the barcode or self checkout – not as many cashiers at target, but do people really want to be typing or scanning food all day? Forces us to level up our workforce and think about how we can better optimize what we do as humans. The care, empathay, personalization, emotion reading jobs.
- You note that that live coaching brings a “human touch” to Captovation. How does this reflect the future of AI in communications? How permanent will the d need for a “human touch” be in roles involving language, communications, and more?
- It will be essential. The computer can only go so far and it doesn’t have true empathy for what another human is going through. It’s with this experience and feelings that humans will always remain in the loop of technology and services.
- How should business and other non-technical students be taught the skills necessary to utilize machine learning and AI to prevent themselves from being made redundant by the same technology?
- Take a class at your local university or on coursera.
- Keep up to date with AI trade journals & websites and meetups. Google for groups and people you can meet. Subscribe to iotweeklynews.com or attend APPLIEDAI.MN
- What are some of the key subjects you touch on in your curriculum when teaching courses in the Internet of Things?
- Defining what IoT is and where it is on the adoption curve.
- Some of the areas of concern with IoT ( Security, Data Privacy, Usability ) and real world examples
- Getting hands on by programming sensors and getting data
- Create a capstone project
- Realize it’s only a 15 week course and understanding what is required to continue on


12.1 The time Module
The underlying C library determines the
range of dates that the time module can handle.  Time
instants are normally specified in UTC (Coordinated Universal Time,
once known as GMT, or Greenwich Mean Time). Module
time also supports local time zones and Daylight
Saving Time (DST), but only to the extent that support is supplied by
the underlying C system library.
As an
alternative to seconds since the epoch, a time instant can be
represented by a tuple of nine integers known as a time-tuple. Items
in time-tuples are covered in Table 12-1. All items
are integers, and therefore time-tuples cannot keep track of
fractions of a second. In Python 2.2 and later, the result of any
function in module time that used to return a
time-tuple is now of type struct_time. You can
still use the result as a tuple, but you can also access the items as
read-only attributes
x.tm_year,
x.tm_mon, and so on,
using the attribute names listed in Table 12-1.
Wherever a function used to require a time-tuple argument, you can
now pass an instance of struct_time or any other
sequence whose items are nine integers in the applicable
ranges.
Table 12-1. Tuple form of time representation
|
0
|
Year
|
tm_year
|
1970-2038
|
Wider on some platforms
|
|
1
|
Month
|
tm_mon
|
1-12
|
1 is January; 12 is December
|
|
2
|
Day
|
tm_mday
|
1-31
|
|
|
3
|
Hour
|
tm_hour
|
0-23
|
0 is midnight; 12 is noon
|
|
4
|
Minute
|
tm_min
|
0-59
|
|
|
5
|
Second
|
tm_sec
|
0-61
|
60 and 61 for leap seconds
|
|
6
|
Weekday
|
tm_wday
|
0-6
|
0 is Monday; 6 is Sunday
|
|
7
|
Year day
|
tm_yday
|
1-366
|
Day number within the year
|
|
8
|
DST flag
|
tm_isdst
|
-1 to 1
|
-1 means library determines DST
|
To translate a time instant from "a seconds since
the epoch" floating-point value into a time-tuple,
pass the floating-point value to a function (e.g.,
localtime) that returns a time-tuple with all nine
items valid. When you convert in the other direction,
mktime ignores items six
(tm_wday) and seven (tm_yday)
of the tuple. In this case, you normally set item eight
(tm_isdst) to -1, so that
mktime itself determines whether to apply Daylight
Saving Time (DST).
Module time supplies the following functions and
attributes.
Accepts a time-tuple and returns a 24-character string such as
'Tue Dec 10
18:07:14 2002'.
asctime( ) without arguments is like
asctime(localtime(time( ))) (i.e., it formats the
current time instant).
Returns the current CPU time as a floating-point number of seconds.
To measure computational costs of different approaches, it is
generally better to use the results of time.clock
rather than those of time.time. On Unix-like
platforms, the reason is that the results of
time.clock, using CPU time rather than elapsed
time, are less dependent than those of time.time
on unpredictable factors due to machine load. On Windows, this reason
does not apply, as Windows has no concept of CPU time, but there is
another reason: time.clock uses the
higher-precision performance counter machine clock. The epoch (the
time corresponding to a 0.0 result from
time.clock) is arbitrary, but differences between
the results of successive calls to time.clock in
the same process are accurate.
Like
asctime(localtime(secs))
(i.e., accepts an instant expressed in seconds since the epoch and
returns a 24-character string form of that time instant).
ctime( ) without arguments is like
asctime(localtime(time( ))) (i.e., it formats the
current time instant).
Accepts an instant expressed in seconds since the epoch and returns a
nine-item time-tuple t with the UTC time
(DST, the last item of t, is always
0). gmtime( ) without arguments
is like gmtime(time( )) (i.e., it returns the
nine-item time-tuple for the current time instant).
Accepts an instant expressed in seconds since the epoch and returns a
nine-item tuple t with the local time
(DST, the last item of t, is set to
0 or 1, depending on whether
DST applies to instant secs according to
local rules). localtime( ) without arguments is
like localtime(time( )) (i.e., it returns the
nine-item time-tuple for the current time instant).
Accepts an instant expressed as a nine-item tuple in local time and
returns a floating-point value with the instant expressed in seconds
since the epoch. DST, the last item in
tupletime, is meaningful: set it to
0 to get solar time, to 1 to
get Daylight Saving Time, or to -1 to let
mktime compute whether DST is in effect or not at
the given instant.
Suspends the calling thread for secs
seconds (secs is a floating-point number
and can indicate a fraction of a second). The calling thread may
start executing again before secs seconds
(if some signal wakes it up) or after a longer suspension (depending
on system scheduling of processes and threads).
strftime(fmt[,tupletime])
|
|
Accepts an instant expressed as a nine-item tuple in local time and
returns a string that represents tupletime
as specified by string fmt. If you omit
tupletime, strftime
uses localtime(time( )) instead (i.e., it formats
the current time instant in the local time zone). The syntax of
string format is similar to the syntax
specified in Section 9.3. However, conversion
characters are different, as shown in Table 12-2,
and refer to the time instant specified by
tupletime. Specifying width and precision
explicitly works on some platforms, but not on
all.
Table 12-2. Conversion characters for strftime
a
|
Weekday name, abbreviated
|
Depends on locale
|
A
|
Weekday name, full
|
Depends on locale
|
b
|
Month name, abbreviated
|
Depends on locale
|
B
|
Month name, full
|
Depends on locale
|
c
|
Complete date and time representation
|
Depends on locale
|
d
|
Day of the month
|
Between 1 and 31
|
H
|
Hour (24-hour clock)
|
Between 0 and 23
|
I
|
Hour (12-hour clock)
|
Between 1 and 12
|
j
|
Day of the year
|
Between 1 and 366
|
m
|
Month number
|
Between 1 and 12
|
M
|
Minute number
|
Between 0 and 59
|
p
|
`AM' or
`PM' equivalent
|
Depends on locale
|
S
|
Second number
|
Between 0 and 61
|
U
|
Week number (Sunday first weekday)
|
Between 0 and 53
|
w
|
Weekday number
|
0 is Sunday, up to 6
|
W
|
Week number (Monday first weekday)
|
Between 0 and 53
|
x
|
Complete date representation
|
Depends on locale
|
X
|
Complete time representation
|
Depends on locale
|
y
|
Year number within century
|
Between 0 and 99
|
Y
|
Year number
|
1970 to 2038, or wider
|
Z
|
Name of time zone
|
Empty if no time zone exists
|
%
|
A literal % character
|
Encoded as %%
|
You can obtain dates as formatted by asctime
(e.g., 'Tue Dec
10 18:07:14
2002') with the format string:
'%a %b %d %H:%M:%S %Y' You can obtain dates compliant with RFC 822 (e.g.,
'Tue, 10 Dec
2002 18:07:14
EST') with the format string:
'%a, %d %b %Y %H:%M:%S %Z'
strptime(str,fmt='%a %b %d %H:%M:%S %Y')
|
|
Parses str according to format string
fmt, and returns the instant in time-tuple
format. With Python 2.2 and earlier, strptime is
not available on all platforms. However, a pure Python implementation
is available at http://aspn.activestate.com/ASPN/Python/Cookbook/Recipe/56036.
In Python 2.3, the pure Python implementation will be used as a
fallback on platforms that provide no other, so that
time.strptime will always be available.
Returns the current time instant, a floating-point number of seconds
since the epoch. On some platforms, the precision of time
measurements is as low as one second.
Attribute
time.timezone is the offset in seconds of the
local time zone (without DST) from UTC (greater than
0 in the Americas and less than
0 in most of Europe, Asia, and Africa).
Attribute time.tzname is a pair of
locale-dependent strings, the names of the local time zone without
and with DST, respectively.
|


Alfred Avor
Full Stack Developer
Full Stack Developer with over 7 years experience working in Federal Government. Proficient in HTML, CSS, and Javascript. Additional experience with MongoDB, React, MySQL, and NodeJS
I enjoy working on the Frontend but I am continually improving on my Backend skills. Working with NodeJS and MongoDB has been a good experience so far and has improved my overall full stack development.


Logout
Home
Orders
Foods and Drinks
add_circle
Add food
settings
Manage food
Home
Customer orders
Foods and drinks
Logout
add_circle
Add food
settings
Manage food
Manage food items
search
Picture
Food Item description
Action
Fried rice with chicken
edit
remove_circle
Double Burger
edit
remove_circle
×
Update Food Item
Upload image
Fried rice with 2 chiken
Submit
Cancel
question
×
Are you sure you want to delete this contact ?


|
StbxEngine
Simple 2D Graphic engine powered by SFML
|
Additional Inherited Members | |
| Public Member Functions inherited from Engine | |
| Engine (int width=800, int height=600) | |
| bool | openWindow (int, int) |
| sf::Vector2i | getWindowSize () const |
| void | handleArgs (int argc, char **argv) |
| void | videoParamSet (const std::string &, const int &) |
| sf::Image | capture () |
| void | graphicsLoop () |
| bool | updateLoop () |
| int | mainLoop () |
| void | quit () |
| Static Public Member Functions inherited from Engine | |
| static char | getChar (sf::Event event, CharType type, bool useBinds=true) |
| static struct tm * | getTime () |
| static std::string | getTimestamp () |
| Static Public Attributes inherited from Engine | |
| static Keybinds * | keybinds = new Keybinds() |
| static Console * | console = NULL |


Toggle navigation
Liquor Tree
Toggle navigation
Bartender
Virtual Bartender
Recipe Ingredients:
Recipe Instructions:
Click Me And I'll Make Your Day!


Creating a New Environment from Scratch¶
Every once in a while (fairly often), the yml environmental files in the conda folder break. It’s either because:
A dependency is removed.
A dependency of a dependency is removed.
???
When this happens, you need to create a new environment from scratch. Here’s how you do it.
On a Linux machine, use the command below to create an environment:
conda create -n e3sm_diags_env e3sm_diags python=3 mesalib -c e3sm -c conda-forge -c cdat
It gets the latest Python 3 version of e3sm_diags
.
Activate your new environment and
cd
to thetests/system/
folder.Run the command below, checking that the output is correct.
python all_sets.py -d all_sets.cfg
If you’re creating an env for a version below v2.0.0, use the command below:
e3sm_diags -p all_sets.py -d all_sets.cfg
4. If you get an error while running, contact the CDAT team. It might be a CDAT dependency that’s causing the issue. They might make you use Anaconda to force install the correct versions of things.
Once you have a working, environment, dump it into a file called
e3sm_diags_env.yml
.conda env export > e3sm_diags_env.yml
Edit the file and remove most of the build numbers.
The build numbers are the numbers after the last ‘=’ sign. Ex: It’s
py36h0aa2c8f_1004
incartopy=0.17.0=py36h0aa2c8f_1004
. So the line would becartopy=0.17.0
, without the final ‘=’ sign.If the build number doesn’t have a hash and seems to have some build-specific feature, do not remove the build number. In the example below, we will not remove the build numbers, because they look important.
openblas
inblas=1.1=openblas
nompi
inhdf5=1.10.5=nompi_h3c11f04_1100
mpich
inmpi=1.0=mpich
blas_openblas
innumpy=1.16.2=py36_blas_openblash1522bff_0
blas_openblas
inpy36_blas_openblash1522bff_0
mesalib
inpy36_mesalibh24c825c_0
7. Also, in the yml
file, update any versions of any dependencies you need.
Ex: Updating cdp=1.4.2
to cdp=1.6.0
.
8. To be thorough, create an environment with this new file again to see if everything is working after all of the changes.
conda env create -f e3sm_diags_env.yml --name e3sm_diags_env_test
Run steps 2 and 3 again.
10. Then, cp
this file into a e3sm_diags_env_dev.yml
.
Open this new file and do the following:
Change
name: e3sm_diags_env
toname: e3sm_diags_env_dev
.Under channels, remove:
- e3smUnder
dependencies
, remove:- e3sm_diags=1.7.0Change
prefix: /global/homes/z/zshaheen/anaconda2/envs/e3sm_diags_env
toprefix: /global/homes/z/zshaheen/anaconda2/envs/e3sm_diags_env_dev
.
Commit and push both
e3sm_diags_env.yml
ande3sm_diags_env_dev.yml
.


--- layout: archive title: Zulip Chat Archive permalink: /stream/113489-new-members/topic/How.20exactly.20do.20I.20do.20self-referential.20definitions.3F.html ---
I'm trying to define a relation R such that for all x, x R (x + 1)
and transitive R
. Now I know I could probably do this inductively, but I don't want to (because I want the method to apply even if I had, e.g. symmetric R
). My instinct was to use a non-constructive definition, like this (I know this is nonsense, but it's just a sketch of what I want to do):
local attribute [instance] classical.prop_decidable noncomputable def double_cosets (x y : ℤ): ℤ → ℤ → Prop := if y = x + 1 then true transitivity double_cosets
But that doesn't work because
1. true
becomes the value of a relation, when I really want that to be the proposition it maps to.
2. Lean doesn't understand the self-reference.
How do I define it?
trans_gen
Take the transitive closure of your original relation
isn't this just <
?
import logic.relation inductive original : ℕ → ℕ → Prop | r : ∀ n, original n (n+1) def R := relation.trans_gen original
@Mario Carneiro I think he wants to experiment instead of creating new things
alternatively:
inductive R : ℕ → ℕ → Prop | basic : ∀ n, R n (n+1) | trans : ∀ a b c, R a b → R b c → R a c
Now you can prove things about R
by induction
It might be interesting to look at the definition of <
on the natural numbers at this point
Huh, that makes sense. So induction can be used for anything self-referential?
not anything.
and to tie this up with an earlier conversation, you could even look at the proof that <
on nat
is decidable, which is an algorithm which, given two nats, spits out which is the smallest.
and I would define a function N -> N -> bool instead
to emphasize that it is decidable
Whenever you want the "least relation satisfying some properties" that's an inductive predicate
and "smallest type closed under some operations" is an inductive type
the relation doesn't have to be decidable, and the proof that it is usually goes by rather different methods than the original
There are interesting examples of nondecidable predicates like "in the span of s" in a group
So what is the noncomputable
kind of definition for? Isn't my definition non-constructive?
inductive
things are always computable, it's definition
that is noncomputable
I think it's fine.
Prop
is a strange thing
you can have non-decidable propositions
that doesn't make it noncomputable
No, I get that -- my point is that the definition is non-constructive, isn't it?
it isn't
you're just defining a proposition
it is not nonconstructive because you aren't actually constructing anything
it's like you can write down what it means for a program to halt
you just can't evaluate that statement
Yeah, you're right, I got confused.
{% endraw %}Last updated: Apr 24 2020 at 19:02 UTC


 Chase imaginary bugs burrow under covers.  Peer out window, chatter at birds, lure them to mouth refuse to drink water except out of someone's glass or attack feet behind the couch, and sun bathe, yet hunt anything that moves.
Unwrap toilet paper. White cat sleeps on a black shirt scratch leg; meow for can opener to feed me refuse to drink water except out of someone's glass use lap as chair, but the dog smells bad and immediately regret falling into bathtub for refuse to drink water except out of someone's glass.
Poop in litter box, scratch the walls eat from dog's food and find empty spot in cupboard and sleep all day for jump around on couch, meow constantly until given food, so purr while eating. Hide head under blanket so no one can see fall over dead (not really but gets sypathy) mew for bathe private parts with tongue then lick owner's face or spit up on light gray carpet instead of adjacent linoleum.
Feel free to email us to provide some feedback on our services, give us suggestions for new services and breeds, or to just say hello!


| S | stats toolbox needed | I | interactive (user input required) |
| B | bioinformatics toolbox needed | M | matlab needed (will not work in octave) |
| O | optimization toolbox needed | W | windows needed (will not work in linux) |
| X | currently broken | * | slow (two stars indicates very slow) |
| FILE | DESCRIPTION | TAGS |
|---|---|---|
| sub\unidrndPMTK | Replacement function for the stats toolbox unidrnd function | |
| sub\unifrndPMTK | Replacement for the stats unifrnd function | |
| uniformCreate | Construct a uniform distribution | |
| uniformLogprob | logp(i) = log p(X(i) | a, b) | |
| uniformSample | Sample n uniformly distributed random numbers in the range [a, b]. |


{{ partial "head.html" . }} {{ partial "navigation.html" . }} {{ partial "article.html" . }} {{ partial "right-side-bar.html" . }} {{ partial "footer.html" . }} {{ partial "head_end.html" . }}


Multidimensional Raster Data Model
This document attempts to describe the GDAL multidimensional data model, that has been added in GDAL 3.1. That is the types of information that a GDAL multidimensional dataset can contain, and their semantics.
The multidimensional raster API is a generalization of the traditional Raster Data Model, to address 3D, 4D or higher dimension datasets. Currently, it is limited to basic read/write API, and is not that much plugged into other higher level utilities.
It is strongly inspired from the netCDF and HDF5 API and data models. See HDF5 format and data model.
A GDALDataset
with multidimensional content contains a root
GDALGroup
.
Group
A GDALGroup
(modelling a HDF5 Group)
is a named container of GDALAttribute, GDALMDArray or
other GDALGroup. Hence GDALGroup can describe a hierarchy of objects.
Attribute
A GDALAttribute
(modelling a HDF5 Attribute)
has a name and a value, and is typically used to describe a metadata item.
The value can be (for the HDF5 format) in the general case a multidimensional array
of "any" type (in most cases, this will be a single value of string or numeric type)
Multidimensional array
A GDALMDArray
(modelling a HDF5 Dataset)
has a name, a multidimensional array, references a number of GDALDimension, and
has a list of GDALAttribute.
Most drivers use the row-major convention for dimensions: that is, when considering
that the array elements are stored consecutively in memory, the first dimension
is the slowest varying one (in a 2D image, the row), and the last dimension the
fastest varying one (in a 2D image, the column). That convention is the default
convention used for NumPy arrays, the MEM driver and the HDF5 and netCDF APIs.
The GDAL API is mostly agnostic
about that convention, except when passing a NULL array as the stride parameter
for the GDALAbstractMDArray::Read()
and GDALAbstractMDArray::Write()
methods.
You can refer to NumPy documentation about multidimensional array indexing order issues
a GDALMDArray has also optional properties:
Coordinate reference system:
OGRSpatialReference
No data value:
Unit
Offset, such that unscaled_value = offset + scale * raw_value
Scale, such that unscaled_value = offset + scale * raw_value
Number of operations can be applied on an array to get modified views of it:
GDALMDArray::Transpose()
, GDALMDArray::GetView()
, etc.
The GDALMDArray::Cache()
method can be used to cache the value of
a view array into a sidecar file.
Dimension
A GDALDimension
describes a dimension / axis used to index multidimensional arrays.
It has the following properties:
a name
a size, that is the number of values that can be indexed along the dimension
a type, which is a string giving the nature of the dimension. Predefined values are: HORIZONTAL_X, HORIZONTAL_Y, VERTICAL, TEMPORAL, PARAMETRIC Other values might be used. Empty value means unknown.
a direction. Predefined values are: EAST, WEST, SOUTH, NORTH, UP, DOWN, FUTURE, PAST Other values might be used. Empty value means unknown.
a reference to a GDALMDArray variable, typically one-dimensional, describing the values taken by the dimension. For a georeferenced GDALMDArray and its X dimension, this will be typically the values of the easting/longitude for each grid point.
Data Type
A GDALExtendedDataType
(modelling a
HDF5 datatype)
describes the type taken by an individual value of
a GDALAttribute or GDALMDArray. Its class can be NUMERIC,
STRING or COMPOUND. For NUMERIC, the existing GDALDataType
enumerated
values are supported. For COMPOUND, the data type is a list of members, each
member being described by a name, a offset in byte in the compound structure and
a GDALExtendedDataType.
Note
The HDF5 modelisation allows for more complex datatypes.
Note
HDF5 does not have native data types for complex values whereas GDALDataType does. So a driver may decide to expose a GDT_Cxxxx datatype from a HDF5 Compound data type representing a complex value.
Differences with the GDAL 2D raster data model
The concept of GDALRasterBand is no longer used for multidimensional. This can be modelled as either different GDALMDArray, or using a compound data type.
Bridges between GDAL 2D classic raster data model and multidimensional data model
The GDALRasterBand::AsMDArray()
and GDALMDArray::AsClassicDataset()
can be used to respectively convert a raster band to a MD array or a 2D dataset
to a MD array.
Applications
The following applications can be used to inspect and manipulate multidimensional datasets:


{% extends 'shaq/project_base.html' %} {% block head %} {% load staticfiles %} {% endblock head %} {% block title %} Interior NC {{ report.report_number }} {% endblock title %} {% block main %}
| DOCUMENT NUMBER | {{ report.doc_number }} |
| DOCUMENT TITLE | {{ report.doc_title }} |
| REPORT NUMBER | {{ report.report_number }} |
| ISSUE RESOLVED? | {{ report.resolved }} |
| QUALITY ALERT? | {% if report.qualityalert %} {{ report.qualityalert.resolved }} {{ report.qualityalert.report_number }} {% else %} Create Quality Alert {% endif %} |
| ORDER NUMBER | {{ report.order_number }} |
| BUILD NUMBER | {{ report.build_number }} |
| VIN | {{ report.vin }} |
| REPORT DATE: | {{ report.report_date }} |
| ISSUE SUMMARY | {{ report.issue_summary|linebreaks }} |
| ISSUE IMAGE(S) | {% for image in report.intncimage_set.all %} {% endfor %} |
| LOCATION | {{ report.location }} |
| PART CATEGORY | {{ report.part }} |
| INSPECTION TYPE | {{ report.inspection }} |
| VEHICLE | {{ report.vehicle }} |
| DRIVE | {{ report.drive }} |
| SHIFT | {{ report.shift }} |
| CLEAN BUILD | {{ report.clean_build }} |
| REPAIRED? | {{ report.repaired }} |
| PART RETURNED? | {{ report.part_returned }} |
| BI LEVEL | {{ report.BI_level }} |
| IN PCSQ? | {{ report.in_PCSQ }} |
| QN NUMBER | {{ report.qn_num }} |
| ACCEPT RESPONSIBILITY? | {{ report.accepts }} |
| CONTAINMENT? | {{ report.containment }} |
| CONTAINMENT ACTIVITY | {{ report.containment_activity|linebreaks }} |
| ADDITIONAL INFORMATION | {{ report.additional_info|linebreaks }} |
| INTERNAL REPRESENTATIVE | {{ report.internal_rep }} |
| EXTERNAL REPRESENTATIVE | {{ report.external_rep }} |
| REPORTED TO | {{ report.reported_to }} |
No report.
{% endif %}


RE: COLLECTION OF FUND (US$25,000,000.00) UNDER SPECIAL ARRANGEMENT. Pardon me if I have offended you by contacting you for such a big transaction through an ordinary letter which makes it suspicious considering the type of fraud proposals moving around the world today. However, I was advised to explain this transaction to you on a face to face meeting. I could not do this because of the situation in the world today not being sure of your reaction. I am Jones Martin, a Consultant and Broker from Kingston Jamaica. I was hired by a Japanese Businessman to broker an investment deal between him and an oil company in Venezuela. This deal was executed in January, 2003 and matured for termination in January 2005. On maturity, the Japanese Businessman and the oil firm decided to terminate the investment in cash to avoid payment of investment tax which amounted to several tens of millions of US Dollars to the American Internal Revenue Service (IRS). A special arrangement was made between a top Japanese banker working with Japanese bank in New York, the Oil Company and the businessman to terminate the investment in cash payment under a fictitious name, with an arrangement to change it later with a power of attorney which they prepared and handed over to The banker. I was directly involved, well paid and mandated to organized and carry out the deal. All the cash was withdrawn in June 2005 and transported to EUROPE by direct bank vault delivery to a finance company for safekeeping pending the collection. The real content of the boxes was not declared to the storage as it was delivered as personal family treasure worth US$25M.The certificates for the storage, secret codes for the opening of the boxes and its keys were all handed over to me. Mr. Takashi the Florida businessman was planning to go to Europe by August 2005 with me for the collection when the unexpected happened in Hurricane Katrina Mishap, a natural disaster which claimed his life and that of the top banker. This left me devastated and confused as I have not yet handed over the deposit details to the owner and the power of attorney prepared for the change which was signed was still with the banker in his office which was lost. Since last December the diplomatic storage manager has been calling me to bring or tell the owner to come over for collection. Since then, I have been finding any reliable person to collect these consignments under special and well negotiated arrangement until I came across your details. Be rest assured that this transaction has been well organized, 100% safe, legal, and should be kept very confidential. Signify your interest by getting back to me via my email as soon as possible. Regard, Jones Martin


Import / Export¶
Part
and Assembly
instances can be exported to file, and created by importing from file.
For any of the importers or exporters below,
Getting an Exporter¶
An exporter will get an existing Part
or
Assembly
and write it to file.
An Exporter
can be instantiated from a Part
or Assembly
instance with the use of
exporter()
.
For example, exporting a .json
file may be done with:
>>> from cqparts_misc.basic.primatives import Cube
>>> cube = Cube(size=2)
>>> json_exporter = cube.exporter('json')
>>> json_exporter('my_cube.json')
>>> # or in a single line
>>> cube.exporter('json')('my_cube.json')
each Exporter
will have different ways to call it, and different
parameters.
Getting an Importer¶
Importers create a new instance of a Part
or
Assembly
from the data in the file being
imported.
So an Importer
is instantiated from Part
or Assembly
class (not an instance of that class).
For example, importing a .STEP
file may be achieved with:
>>> from cqparts import Part
>>> step_importer = Part.importer('step')
>>> my_part = step_importer('my_file.step')
>>> # or in a single line
>>> my_part = Part.importer('step')('my_file.step')
each Importer
will have different ways to call it, and different
parameters.
To use a specific importer, please find it in the cqparts.codec
module
and read its documentation; each one should have examples.
Formats¶
Formats are documented in their respective Importer
and
Exporter
classes.
To learn more, have a look at the cqparts.codec
module page.
Creating your own¶
If you’d like to create your own Exporter
or Importer
class,
you can do it, and register it!
To learn more, look at the example code in
register_exporter()
and register_importer()
.


| col_nchar {crayon} | R Documentation |
This is a color-aware counterpart of base::nchar()
,
which does not do well, since it also counts the ANSI control
characters.
col_nchar(x, ...)
x |
Character vector, potentially ANSO styled, or a vector to be coarced to character. |
... |
Additional arguments, passed on to |
Numeric vector, the length of the strings in the character vector.
Other ANSI string operations:
col_align()
,
col_strsplit()
,
col_substring()
,
col_substr()
str <- paste( red("red"), "default", green("green") ) cat(str, "\n") nchar(str) col_nchar(str) nchar(strip_style(str))


Lugger lugsail wench main sheet me strike colors aye Buccaneer scuttle rigging. Handsomely keel ye maroon belaying pin code of conduct careen American Main driver yardarm. Run a rig Sea Legs haul wind scuttle coxswain fluke topmast marooned mutiny gunwalls.
Plate Fleet boom Cat o'nine tails six pounders pirate bucko list parrel long clothes brigantine. Handsomely Corsair hearties weigh anchor parley prow gabion bilge rat topgallant salmagundi. Lugger Corsair Letter of Marque log provost deadlights hail-shot scuppers code of conduct clap of thunder.
Plate Fleet boom Cat o'nine tails six pounders pirate bucko list parrel long clothes brigantine. Handsomely Corsair hearties weigh anchor parley prow gabion bilge rat topgallant salmagundi. Lugger Corsair Letter of Marque log provost deadlights hail-shot scuppers code of conduct clap of thunder.


Enotice Board
Download App
Yesterday at 4:32 PM
Lorem ipsum dolor sit amet, consectetur...
John Smith
Yesterday at 4:32 PM
Lorem ipsum dolor sit amet, consectetur...
John Smith
Yesterday at 4:32 PM
Lorem ipsum dolor sit amet, consectetur...
Read All New Messages
(current)
Add Text
Add Post
Add Document
{{name}}
Profile
Indox
Settings
Log Out
☰
Home
Profile
Pending Approval
Archives
View Users
Other Department
Logout
Inactive user :


Loading...
g
nav_eq.c
gain_matrix
gain_matrix(void): nav_eq.c
gain_matrix(void): nav_eq.c
get_command_info
control_tables.h
get_mcu_serial
commands.c
gravity
nav_eq.c
gyro_bias_calibration.m
GYRO_CALIBRATION
control_tables.h
GYRO_CALIBRATION_INIT
control_tables.h
GYRO_SCALE
imu_interface.c
gyro_self_calibration
commands.c
Searching...
No Matches


If for , the following linearized collision operator, , is a good approximation to the full collision operator .
| (16) |
In order to make the linearized collision operator have the property of momentum-conservation, the second term of the linearized collision operator must be retained. It can be proved that it is only the first Legendre harmonic of this term that is responsible for the parallel momentum-conservation[6]. Therefore, to make momentum conserve, and at the same time to make the collision operator simple, we can retain only the and Legendre harmonics of this term. In practice, the term is usually discarded. The purpose in doing this is to artificially remove the Ohm heating from the system. (This procedure is obviously not-physical and unreasonable. I do not like this, so I prefer the approximation in Eq. (17) although it may be inaccurate.)
The second term of the linearized collision operator is modified to include only the first Legendre harmonic, i.e. the collision operator actually used in the numerical calculation is
| (19) |
The collision operator defined in Eq. (18) is widely used in numerical codes dealing with noninductive current drive by waves[6].
YouJun Hu 2012-12-08


--- layout: panel title: Listing Clients active_if: demo/clients/ aside: true collection: true ---
Client was successfully deleted


config.Rd
Customize configuration of the html2canvas call.
config( allowTaint, backgroundColor, canvas, foreignObjectRendering, imageTimeout, ignoreElements, logging, onclone, proxy, removeContainer, useCORS, scale, width, height, x, y, scrollX, scrollY, windowWidth, windowHeight, ... )
| allowTaint | Whether to allow cross-origin images to taint the canvas. Default = FALSE |
|---|---|
| backgroundColor | Canvas background color, if none is specified in DOM. Set NULL for transparent. Default: '#ffffff' |
| canvas | Existing canvas element to use as a base for drawing on. Default = NULL |
| foreignObjectRendering | Whether to use ForeignObject rendering if the browser supports it. Default = FALSE |
| imageTimeout | Timeout for loading an image (in milliseconds). Set to 0 to disable timeout. Default: 15000 |
| ignoreElements | Predicate function which removes the matching elements from the render. Usage: '(element) => false' |
| logging | Enable logging for debug purposes. Default = TRUE |
| onclone | Callback function which is called when the Document has been cloned for rendering, can be used to modify the contents that will be rendered without affecting the original source document. Default = NULL |
| proxy | Url to the proxy which is to be used for loading cross-origin images. If left empty, cross-origin images will not be loaded. Default = NULL |
| removeContainer | Whether to cleanup the cloned DOM elements html2canvas creates temporarily. Default = TRUE |
| useCORS | Whether to attempt to load images from a server using CORS. Default = FALSE |
| scale | The scale to use for rendering. Defaults to the browsers device pixel ratio. Default: 'window.devicePixelRatio' |
| width | The width of the canvas. Default: Element width |
| height | The height of the canvas. Default: Element height |
| x | Crop canvas x-coordinate. Default: Element x-offset |
| y | Crop canvas y-coordinate. Default: Element y-offset |
| scrollX | The x-scroll position to used when rendering element, (for example if the Element uses position: fixed). Default: Element scrollX |
| scrollY | The y-scroll position to used when rendering element, (for example if the Element uses position: fixed). Default: Element scrollY |
| windowWidth | Window width to use when rendering Element, which may affect things like Media queries. Default: 'window.innerWidth' |
| windowHeight | Window height to use when rendering Element, which may affect things like Media queries. Default: 'window.innerHeight' |
| ... | not used |
json
To find further information on the configurations that can be used please refer to html2canvas


Heading of the Article
By: John Doe
This is the paragraph with p tag
List 1
List 2
List 3
List 4
List 5


Explain Plan
DB2 Universal Database Version 9.7, 5622-044 (c) Copyright IBM Corp. 1991, 2008
Licensed Material - Program Property of IBM
IBM DATABASE 2 Explain Table Format Tool
******************** EXPLAIN INSTANCE ********************
DB2_VERSION: 09.07.0
SOURCE_NAME: SQLC2H20
SOURCE_SCHEMA: NULLID
SOURCE_VERSION:
EXPLAIN_TIME: 2009-10-19-<IP_ADDRESS>001
EXPLAIN_REQUESTER: CLARALIU
Database Context:
----------------
Parallelism: None
CPU Speed: 3.818116e-007
Comm Speed: 100
Buffer Pool size: 6250
Sort Heap size: 256
Database Heap size: 600
Lock List size: 4096
Maximum Lock List: 22
Average Applications: 1
Locks Available: 28835
Package Context:
---------------
SQL Type: Dynamic
Optimization Level: 5
Blocking: Block All Cursors
Isolation Level: Cursor Stability
---------------- STATEMENT 1 SECTION 201 ----------------
QUERYNO: 3
QUERYTAG: CLP
Statement Type: Select
Updatable: No
Deletable: No
Query Degree: 1
Original Statement:
------------------
SELECT patient_id,date_of_consultancy,
XMLQUERY('$i/ClinicalDocument/component/structuredBody/component/section/text'
PASSING GRP1255977523782_12.out_patient_data.PMD as "i") as
Past_Medical_Details
FROM GRP1255977523782_12.out_patient_data
WHERE
xmlexists('$i/ClinicalDocument/recordTarget/patientRole/patient/name[given =
"James"]' passing PMD as "i")
Optimized Statement:
-------------------
SELECT Q2.PATIENT_ID AS "PATIENT_ID", Q2.DATE_OF_CONSULTANCY AS
"DATE_OF_CONSULTANCY", Q1.$C1 AS "PAST_MEDICAL_DETAILS"
FROM $INTERNAL_FOR$ ((TABLE ($INTERNAL_XPATH$
('($INTERNAL_XMLTOXML_NIEO$(Q2.PMD))/{(.[ $INTERNAL_EBV_BOOLEAN$(Clinic
alDocument/recordTarget/patientRole/patient/name[(given =
"James")])])(:-->$C0:),
ClinicalDocument/component/structuredBody/component/section/(text)(:-->$C1:)}'
))) AS Q1), GRP1255977523782_12.OUT_PATIENT_DATA AS Q2
Access Plan:
-----------
Total Cost: 53055.1
Query Degree: 1
Rows
RETURN
( 1)
Cost
I/O
|
10
NLJOIN
( 2)
53055.1
7084
/-+--\
1000 0.01
TBSCAN XSCAN
( 3) ( 4)
95.7278 52.9593
84 7
|
1000
DP-TABLE: GRP1255977523782_12
OUT_PATIENT_DATA
Q2
Extended Diagnostic Information:
--------------------------------
Diagnostic Identifier: 1
Diagnostic Details: EXP0020W Table has no statistics. The table
"GRP1255977523782_12"."OUT_PATIENT_DATA" has not
had runstats run on it. This may result in a
sub-optimal access plan and poor performance.
Plan Details:
-------------
1) RETURN: (Return Result)
Cumulative Total Cost: 53055.1
Cumulative CPU Cost: 1.04801e+008
Cumulative I/O Cost: 7084
Cumulative Re-Total Cost: 53055
Cumulative Re-CPU Cost: 1.04789e+008
Cumulative Re-I/O Cost: 7084
Cumulative First Row Cost: 5312.23
Estimated Bufferpool Buffers: 1.26008e+006
Arguments:
---------
BLDLEVEL: (Build level)
DB2 v<IP_ADDRESS>1 : s090521
HEAPUSE : (Maximum Statement Heap Usage)
144 Pages
PREPTIME: (Statement prepare time)
2 milliseconds
STMTHEAP: (Statement heap size)
2048
Input Streams:
-------------
4) From Operator #2
Estimated number of rows: 10
Number of columns: 3
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q3.PAST_MEDICAL_DETAILS
+Q3.DATE_OF_CONSULTANCY+Q3.PATIENT_ID
Expected Sequence Sizes:
------------------------
1.000000,NA,NA
2) NLJOIN: (Nested Loop Join)
Cumulative Total Cost: 53055.1
Cumulative CPU Cost: 1.04801e+008
Cumulative I/O Cost: 7084
Cumulative Re-Total Cost: 53055
Cumulative Re-CPU Cost: 1.04789e+008
Cumulative Re-I/O Cost: 7084
Cumulative First Row Cost: 5312.23
Estimated Bufferpool Buffers: 1.26008e+006
Arguments:
---------
EARLYOUT: (Early Out flag)
NONE
FETCHMAX: (Override for FETCH MAXPAGES)
IGNORE
ISCANMAX: (Override for ISCAN MAXPAGES)
IGNORE
Input Streams:
-------------
2) From Operator #3
Estimated number of rows: 1000
Number of columns: 3
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q2.DATE_OF_CONSULTANCY+Q2.PATIENT_ID+Q2.PMD
Expected Sequence Sizes:
------------------------
NA,NA,1.000000
3) From Operator #4
Estimated number of rows: 0.01
Number of columns: 1
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q1.$C1
Expected Sequence Sizes:
------------------------
1.000000
Output Streams:
--------------
4) To Operator #1
Estimated number of rows: 10
Number of columns: 3
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q3.PAST_MEDICAL_DETAILS
+Q3.DATE_OF_CONSULTANCY+Q3.PATIENT_ID
Expected Sequence Sizes:
------------------------
1.000000,NA,NA
3) TBSCAN: (Table Scan)
Cumulative Total Cost: 95.7278
Cumulative CPU Cost: 1.80138e+006
Cumulative I/O Cost: 84
Cumulative Re-Total Cost: 0.478162
Cumulative Re-CPU Cost: 1.25235e+006
Cumulative Re-I/O Cost: 0
Cumulative First Row Cost: 7.56563
Estimated Bufferpool Buffers: 84
Arguments:
---------
CUR_COMM: (Currently Committed)
TRUE
DPNUMPRT: (Number of data partitions accessed)
4
GLOBLOCK: (Global Lock intent)
INTENT SHARE
JN INPUT: (Join input leg)
OUTER
LCKAVOID: (Lock Avoidance)
TRUE
MAXPAGES: (Maximum pages for prefetch)
ALL
PREFETCH: (Type of Prefetch)
SEQUENTIAL
ROWLOCK : (Row Lock intent)
SHARE (CS/RS)
SCANDIR : (Scan Direction)
FORWARD
SKIP_INS: (Skip Inserted Rows)
TRUE
SPEED : (Assumed speed of scan, in sharing structures)
SLOW
TABLOCK : (Table Lock intent)
INTENT SHARE
TBISOLVL: (Table access Isolation Level)
CURSOR STABILITY
THROTTLE: (Scan may be throttled, for scan sharing)
TRUE
VISIBLE : (May be included in scan sharing structures)
TRUE
WRAPPING: (Scan may start anywhere and wrap)
TRUE
Input Streams:
-------------
1) From Object GRP1255977523782_12.OUT_PATIENT_DATA
Estimated number of rows: 1000
Number of columns: 4
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q2.$RID$+Q2.DATE_OF_CONSULTANCY+Q2.PATIENT_ID
+Q2.PMD
Expected Sequence Sizes:
------------------------
NA,NA,NA,1.000000
Output Streams:
--------------
2) To Operator #2
Estimated number of rows: 1000
Number of columns: 3
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q2.DATE_OF_CONSULTANCY+Q2.PATIENT_ID+Q2.PMD
Expected Sequence Sizes:
------------------------
NA,NA,1.000000
4) XSCAN : (XML Doc Navigation)
Cumulative Total Cost: 52.9593
Cumulative CPU Cost: 103000
Cumulative I/O Cost: 7
Cumulative Re-Total Cost: 52.9547
Cumulative Re-CPU Cost: 91000
Cumulative Re-I/O Cost: 7
Cumulative First Row Cost: 52.9593
Estimated Bufferpool Buffers: 1260
Arguments:
---------
INPUTXID: (Context Node)
PMD
JN INPUT: (Join input leg)
INNER
XPATH : (Internal XPath Expression)
($INTERNAL_XMLTOXML_NIEO$(Q2.PMD))/{(.[ $INTERNAL_EBV_B
OOLEAN$(ClinicalDocument/recordTarget/patientRole/patient/name[(given
= "James")])])(:-->$C0:),
ClinicalDocument/component/structuredBody/component/section/(text)(:-->$C1:)}
Output Streams:
--------------
3) To Operator #2
Estimated number of rows: 0.01
Number of columns: 1
Subquery predicate ID: Not Applicable
Column Names:
------------
+Q1.$C1
Expected Sequence Sizes:
------------------------
1.000000
Objects Used in Access Plan:
---------------------------
Schema: GRP1255977523782_12
Name: OUT_PATIENT_DATA
Type: Data Partitioned Table
Time of creation: 2009-10-19-<IP_ADDRESS>8003
Last statistics update:
Number of columns: 4
Number of rows: 1000
Width of rows: 284
Number of buffer pool pages: 84
Number of data partitions: 4
Distinct row values: No
Tablespace name:
Tablespace overhead: 7.500000
Tablespace transfer rate: 0.060000
Source for statistics: Single Node
Prefetch page count: 32
Container extent page count: 32
Table overflow record count: 0
Table Active Blocks: -1
Average Row Compression Ratio: -1
Percentage Rows Compressed: -1
Average Compressed Row Size: -1


Registration step 2 of 3
This is the address where registration materials will be sent and the name that will appear on your badge.


fun clear(): Unit
Deletes all Teller data. Nice to use if the user of your app logs out, or delete Teller data during development of your app for testing.
This function does not delete any of your cache. That is up to you to do. This simply removes all records of ever fetching a cache so the next time you use a Teller repository, a fetch will be performed.


by Sheelah Kolhatkar
- Cohen was a little different. He wasn’t particularly fantastic at math, he didn’t study global economies, he had no unique investing philosophy. He was just a great trader,
- The key to making money, they believed, was by intelligently controlling their losses
- An agent met Ali Far in the lobby and escorted him to a conference room on the sixth floor; after making sure the elevator was clear, Andrew Michaelson met Far’s partner, C. B. Lee, and brought him to the fifth floor. Michaelson and another prosecutor, Josh Klein, raced back and forth between the two rooms, trying to act as if nothing unusual was going on. The goal was to play them off against one another and try to pressure them to cooperate fully, all without alienating them. It was a delicate situation.
- Mathew’s performance wasn’t enough to get him into Harvard, and his father was furious at his son. His anger drove him to a stunning act of paternal cruelty. A few weeks after Mathew’s eighteenth birthday, he presented his son with a plaque that said: “Son Who Shattered His Father’s Dream.”
- The financial industry has evolved to be so complex that large parts of it are almost completely beyond the reach of regulators and law enforcement
- it has become almost impossible, due to a lack of will
- it has become almost impossible, due to a lack of will or expertise, to prosecute corporate criminals who
by George R. R. Martin
- was hot and smoky. Baskets of burning peat
- would care to hear again. Ever.” “No?” Symon Silver Tongue put his harp aside and took a sip of wine. “A pity.
3. Liar's Poker: Rising Through the Wreckage on Wall Street
by Michael Lewis
- And like a crapshooter who has a pretty lady to blow on his dice, the speculators in both countries had an amazing array of irrational systems to help them win money. They had to guess which direction the American bond market would take: up or down. The systems usually involved staring for hours at charts showing the history of bond prices. As in Rorschach ink blots, an unlikely formation, such as a human head and shoulders, made itself privately known to the viewer. The chartist—for that is what such a person called himself—would then use his ruler and pencil to draw the future of bond prices based on the assumption that the historical pattern could be projected forward. Miraculously, in a bull market, the resulting forecast was usually that the market was going up.
- The trainee had tried to impress the trader and failed. The trader had said, “You are proof that some people are born to be customers.
- Investors do not fear losing money as much as they fear solitude, by which I mean taking risks that others avoid.
- The second pattern to Alexander’s thought was that in the event of a major dislocation, such as a stock market crash, a natural disaster, the breakdown of OPEC’s production agreements, he would look away from the initial focus of investor interest and seek secondary and tertiary effects.
 Most of the time when markets move, no one has any idea why. A man who can tell a good story can make a good living as a broker. It was the job of people like me to make up reasons, to spin a plausible yarn
- What would a painter do if a rival stole his work and put his name on it? He’d paint a replica and issue a challenge for the rival to do the same
- In short, junk bonds behave much more like equity, or shares, than old-fashioned corporate bonds
- A take-over of a large corporation could generate billions of dollars’ worth of junk bonds, for not only would new junk be issued, but the increased leverage transformed the outstanding bonds of a former blue-chip corporation to junk.
- “Every company has got people sitting around who do nothing for what they get paid,” says Joe Perella. “If they take on a lot of debt, it forces them to cut fat.” The take-over specialists did for debt what Ivan Boesky did for greed. Debt is good, they said. Debt works.
4. A Short History of Nearly Everything
by Bill Bryson
- The way it was explained to me is that protons give an atom its identity, electrons its personality.)


@samaleksov /<EMAIL_ADDRESS>Full-Stack Software Engineer
13 years into programming
Game development for mobile
Computer Graphics
Data Visualization
promote diversity on the web
less static tables and more interactivity
ultimately allow more people to have the same experience I had on the Web
How we build Web experiences today
Ingridients
Recipe
Our unique product
This needs to stop
We can do better
State of the art
What can I do with JavaScript TODAY
Where are we falling short
Tour de HTML5
<audio src />
does not just play audio
const context = new AudioContext();
const trackUrl = "data:audio/ogg;base64,T2dnUwACAAAAAAAAAABcls...";
const trackUrl = "http[s]://somewhere/myTack.ogg";
const trackData = [79, 103, 103, 83, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 92, 150, ...];
const context = new AudioContext();
let source = context.createBufferSource();
context.decodeAudioData(trackData, buffer => {
source.buffer = buffer;
source.connect(context.destination);
source.loop = true;
}, handleError);
source.start(0);
Pipe, inject and mix functions over audio sources
<video src />
Human interface devices
Access to USB devices and sorcery
WebUSB
Will provide us with access to data frames from specific Vendor/Product pairs
For now we can stick to WebSockets for receiving that data
Devices
HMD / 6 DoF / 9 DoF
LeapMotions' Minority report device
WebVR
HMD provides Position and Orientation data
Gestures
WebGL
(access to the GPU)
Offload the heavylifting to the bodybuilders
Year 2012
1 Line
Interoperability
Putting it all together
A-Frame WebComponents
<a-scene>
<a-entity>
<a-entity position="0 0 0" camera audio-source geometry>
Example
Demo
It's up to you to build the next best experience
A-FRAME examples https://aframe.io/examples/
LeapMotion JavaScript Gallery https://gallery.leapmotion.com/category/javascript/
three.js examples https://threejs.org/examples/
gl-react https://gl-react-cookbook.surge.sh/hellogl
GitHub https://github.com/samaleksov/techtalks-html5
React/Angular + A-Frame
Angular + ReactNative + glReact
React + three.js
React + glReact
Crafting killer real time apps with SignalR and SQL Server
Advanced data visualization with D3.js
Don't break the web. Prerender your apps...
yes media as well
Escaping the EventLoop / Parallel execution
WebWorkers to the rescue
GPGPU on WebGL
Concurently process large amounts of data on the GPU and read the results back from a texture
GPGPU on WebGL
Fortunately some people sacrificed to create higher level libraries
turbo.js
gpu.js
Don't reinvent the wheel
Chances are for what you're looking there already are multiple C/C++ implementationsBrowser
emscripten
Compile C/C++ code to WebAssembly and asm.js


Frequently Asked Questions about Zion National Park
-
Can I drive my private vehicle into Zion Canyon?
- From April to October access into the canyon is by free shuttle bus only. Private vehicles are allowed to access the canyon from November to mid March.
-
Can I bicycle into Zion Canyon?
- Bicycles are allowed on the 7-mile Zion Canyon Scenic Drive. Due to safety concerns cyclists are required to pull over and stop when approached from behind by a shuttle bus, and NEVER PASS A SHUTTLE BUS.
-
What is a red permit? Do I need one?
-
Red permits are issued for overnight guests of the Zion Lodge. They are required to park in the lodge parking lot.
-
Can commercial buses enter Zion Canyon?
- Commercial tour buses can only drive directly to the Lodge if they are using Lodge facilities. Commercial buses are not allowed to drive anywhere else in the canyon from April through October. Commerical buses are to park in designated areas only - NOT in the shuttle stops.
-
Are food services available in Zion Canyon?
- Zion Lodge operates a restaurant year round and a snack bar from April through October.
-
Is there any camping in Zion Canyon?
- No. Closest camping is available in Watchman and South campgrounds, located near the south entrance.
-
Where can I go swimming in the canyon?
- Anywhere in the Virgin River. Tubing is not allowed within the park, but may be done in Springdale. Swimming is not allowed in the Emerald Pools.
-
How often do rock falls occur in the park & does anyone ever get hurt?
- Rockfalls are very common in Zion. No visitor has ever been killed by a rock fall in the history of Zion National Park.
-
Can I bring my firearm?
- People who can legally possess firearms under applicable federal, state, and local laws, can legally possess firearms in Zion National Park and must follow all state and federal laws. Discharging firearms or hunting within the park is prohibited. Firearms are prohibited in park facilities.
-
Can I bring my dog?
- Pets are not allowed on trails (with the exception of the Pa'rus Trail) or in the wilderness, with the exception of service animals. For more information, visit our "Pets" tab.
Yosemite
Big Bend
Yellowstone


{% if brands_by_organisation %}
Uploaded since {{ yesterday }}:
{% endif %} {%- for org, brands in brands_by_organisation.items() -%}{{ org.name }}{% if not org.email_branding_id %} (no default){% endif %}:
Make sure new email branding can remain in the branding pool. Check:
If the same logo is in the branding pool twice then keep whichever one looks best.
Check the image has a transparent background and is:
Some logos may contain text. If the logo contains the name of the service or organisation, it must be clear to read. Ideally, text size ideally should not be less than 14px.
Use your judgement for text that does not convey important information about the brand identity.
Logos in the pool can be used by more than one service unless a user lets us know it can’t.
Users provide alt text when they upload a logo. We use this alt text to help create a name for the brand. For example:
We can rename the branding if there are many alternate versions. Users may find it hard to choose between them if the names are not descriptive enough. For example:
These new brands are not associated with any organisation and do not need reviewing:


Do you need some inspiration for the project you could be developing next? Here let me help you.
Page not found :(
The requested page could not be found.


CSS Transparent Drop Down Menu
Home
About
Island Info
Native Culture
Wildlife
Activities
Fishing
Scuba Diving
Snorkeling
Water Skiing
Zip Lining
Contact Us
Map & Directions
Schedule a Tour
News
Demo by
Ali Jafarian


| Protein Subunit |
Drosophila S2 insect cell expression system VLPs |
ExpreS2ion |
preclinical |
| Protein Subunit |
S protein |
WRAIR/USAMRIID |
preclinical |
| Protein Subunit |
S-Trimer |
Clover Biopharmaceuticals Inc./GSK |
preclinical |
| Protein Subunit |
Peptide |
Vaxil Bio |
preclinical |
| Protein Subunit |
S protein |
AJ Vaccines |
preclinical |
| Protein Subunit |
Ii-Key peptide |
Generex/EpiVax |
preclinical |
| Protein Subunit |
S protein |
EpiVax/Univ. of Georgia |
Preclinical |
| Protein Subunit |
S protein (baculovirus production) |
Sanofi Pasteur |
Preclinical |
| Protein Subunit |
Full length S trimers/ nanoparticle + Matrix M |
Novavax |
Preclinical |
| Protein Subunit |
gp-96 backbone |
Heat Biologics/Univ. Of Miami |
Preclinical |
| Protein Subunit |
Molecular clamp stabilized Spike protein |
University of Queensland/GSK |
Preclinical |
| Protein Subunit |
S1 or RBD protein |
Baylor College of Medicine |
Preclinical |
| Subunit |
Subunit protein, plant produced |
iBio/CC-Pharming |
Preclinical |
| Protein Subunit |
Subunit |
VIDO-InterVac, University of Saskatchewan |
Preclinical |
| Protein Subunit |
Adjuvanted microsphere peptide |
University of Saskatchewan |
Preclinical |
| Protein Subunit |
Full-length Spike, S1, RDB, nucleocapsid
Formulated with adjuvants /or fused with Fc
|
(Novavax, Phase III) recombinant S protein (Vaxine Pty Ltd, Australia, Phase I) |
Preclinical |
| Protein Subunit |
S protein (adenovirus production |
Johnson & Johnson (Jansen): In partnership with Biomedical Advanced Research and Development Authority (BARDA) |
Preclinical |


U.S. stocks drifted higher Monday but closed out 2018 with their steepest annual declines since the financial crisis, reflecting growing unease among investors about the health of the nearly decade-long bull run.
Trading was quiet heading into the New Year’s Day holiday. Major indexes got a lift early Monday as investors eyed signs of progress in trade negotiations between the U.S. and China. President Trump tweeted over the weekend that he and Chinese President Xi Jinping had made “big progress” in talks that are due to wrap up in March.
“As long as they keep talking, that is positive for the market,” said Geoffrey Yu, head of the London investment office at UBS Wealth Management. “After a few tumultuous weeks, the market is welcoming some stability.”
Still, with trading desks lightly staffed heading into the New Year’s Day holiday, few were willing to call Monday’s gains a decisive turnaround for the market. Stocks suffered a bruising stretch of selling in the final months of 2018 as investors grew increasingly pessimistic about the global economy and grappled with anxieties about the unwinding of central banks’ easy-money policies.
Related
More recently, sparring between lawmakers led to a partial government shutdown that looks likely to stretch on into the new year.
The litany of issues has led to dizzying moves across the market. Last week, U.S. stocks posted their worst-ever Christmas Eve selloff, then logged their biggest one-day point gain on record. In another sign of market turbulence, the Cboe Volatility Index—a barometer of investors’ expectations for stock swings—logged its steepest one-year advance ever.
The swings buffeting stocks left major indexes firmly in the red for 2018, even with their New Year’s Eve rally. The Dow Jones Industrial Average climbed 265.06 points, or 1.1%, to 23327.46 on Monday, boosted by a rally in shares of Boeing and Goldman Sachs . The S&P 500 added 21.11 points, or 0.8%, to 2506.85 and the Nasdaq Composite rose 50.76 points, or 0.8%, to 6635.28.
For the year, the Dow industrials were down 5.6%, the S&P 500 off 6.2% and the Nasdaq down 3.9%.
Stock markets elsewhere around the world fared even worse. The Stoxx Europe 600 shed 13% in 2018, while the U.K.’s FTSE 100 declined 13% and Japan’s Nikkei Stock Average fell 12%.
The volatility spared few asset classes. Oil prices hit multiyear highs in October, only to tumble in the fourth quarter as investors grew increasingly worried about a potential supply glut.


Sir Aaron Tanford
I fear for Hunter Brankel, but what worries me more is what those heathen may do with the remains of Beleth... I must stay here, so I beseech you, go to the
Ant's Nest of the Wastelands
and find out what is going on there.


Pharmacy sales - NHS prescription prepayment
Is the customer about to turn 60?
It looks like the customer is 59 years old. Please let them know they can get free prescriptions from age 60.
It might be more cost-effective for the customer to prepay for 3 months at a time, rather than 12 months.


Abyssal Saintess Elcadia:
Is that so? Well, it is as I expected, there's little we can do. I knew something like this could happen. Now, remember what I am about to say, and tell it to her exactly.
What should I tell her?


Created by Nicole Pellicena
Test the feature you've built.
Refactoring.
Living documentation.
Easier integration testing.
Third-party code changes.
Legacy code.
Make little sense to someone else.
Fail sporadically.
Don't prove anything worthwhile.
Don't sufficiently cover the code.
Coupled too tightly to implementation.
Convoluted tests that jump through too many setup hoops.
Acceptance: Does the whole system work?
Integration: Does our code work against code we can't change?
Unit: Do our objects do the right thing? Are they convenient to work with?
Arrange. Act. Assert.
Set the test system state by creating objects, interacting with them, calling other APIs, and so on.
Exercise the code you want to test, usually by calling a single method.
Verify the code behaved the way you expected.
This can be checking the return value of the exercised code, or the new state of any objects involved. It can also be verifying the interactions between the tested and other objects took place.
Focus on the behaviour of your class, not on testing the individual methods.
Sometimes you might be tempted to combine tests to avoid repeated setup, but doing this loses the benefit of test isolation that JUnit provides.
Immediately know what behaviour went wrong when an assertion fails.
Minimise the amount of sleuthing needed to decipher a failed test.
Ensure all cases get executed.
Hit the next arrow...
... to step through ...
... a fragmented slide.
There's different types of fragments, like:
grow
shrink
fade-out
current-visible
highlight-red
highlight-blue
You can select from different transitions, like:
None -
Fade -
Slide -
Convex -
Concave -
Zoom
reveal.js comes with a few themes built in:
Black (default) -
White -
League -
Sky -
Beige -
Simple
Serif -
Blood -
Night -
Moon -
Solarized
You can override background transitions per-slide.
<section data-background-transition="zoom">
function linkify( selector ) {
if( supports3DTransforms ) {
var nodes = document.querySelectorAll( selector );
for( var i = 0, len = nodes.length; i < len; i++ ) {
var node = nodes[i];
if( !node.className ) {
node.className += ' roll';
}
}
}
}
Code syntax highlighting courtesy of highlight.js.
These guys come in two forms, inline:
“The nice thing about standards is that there are so many to choose from”
and block:
“For years there has been a theory that millions of monkeys typing at random on millions of typewriters would reproduce the entire works of Shakespeare. The Internet has proven this theory to be untrue.”
You can link between slides internally, like this.
There's a speaker view. It includes a timer, preview of the upcoming slide as well as your speaker notes.
Press the S key to try it out.


Christmas Morning
The Skin Horse Tells His Tale
Spring Time
Summer Days
Anxious Times
The Fairy Flower
At Last! At Last!


THE COLOR OF PARADISE (1999) / ** 1/2 aka RANG-E KHODA [Farsi; English subtitles]
Directed by Majid Majidi, from his screenplay. Starring Mohsen Ramezani, Hossein Mahjoub, Salime Feizi. Running time: 90 minutes. Rated PG for frightening scenes by the MFCB. Reviewed on November 7th, 2000.
By SHANNON PATRICK SULLIVAN
To the best of my knowledge, "The Color Of Paradise" is the first Iranian film to be screened in a Newfoundland cinema. I confess that I had little idea what to expect heading into the showing. My general impression of Iran, as a country, is less than favorable. I was raised during the Iran-Iraq war and the reign of the Ayatollah Khomeini; when I reflect on Iran, my first thought is of the infamous death threat made by the former Ayatollah against author Salman Rushdie because of the content of his book "The Satanic Verses".
But it would be a mistake for me to tar all Iranians with the same brush. And indeed, "The Color Of Paradise" is a film totally divorced from such international scandal. It is a very small, quiet, spiritual movie, as far removed from world politics as it is possible to be. This is a story not of political war or religious fanaticism, but of one sightless boy and the way his blindness helps him to see God better than anyone else in his life.
As the film opens, we are introduced to young Mohammad (Mohsen Ramezani), who attends a school for the blind in Tehran. Classes have ended for the year (city schools are better than rural schools, Mohammad later tells his sisters, because they close earlier) and his father, Hashem, is supposed to come and bring him home. But for a long time, Mohammad's father does not come. When he finally does, it is a joyless reunion -- Hashem (Hossein Mahjoub) asks the school officials to keep Mohammad for the summer. It transpires that Mohammad's father, a widower, fears that having a blind son around will impair his chances of finding a new wife, something he wants very desperately.
Ultimately, Hashem is compelled to bring his son home. There, Mohammad enjoys a happier existence around his two young sisters and his beloved Granny (Salime Feizi). But Hashem eventually manages to pawn Mohammad off on a blind carpenter (Morteza Fatemi), who agrees to take the boy in as an apprentice. This decision precipitates an upheaval in the lives of all Mohammad's family, and poses the question of who is truly blind -- the boy or his father?
What is most striking about "The Color Of Paradise" is the way writer/director Majid Majidi and cinematographer Mohammad Davudi have managed to capture the simple beauty of northern Iran. Be it the humble splendour of children playing in an alfalfa field, or the furious vista of a summer rainstorm, the countryside is brought to vivid life, and is as much a character as any of the people inhabiting the film.
This is accentuated by Mohammad Reza Delpak's excellent work on the soundtrack. To reflect the enhancement of young Mohammad's other senses in compensation for his blindness, the noises of the Iranian environment is made as vital as its appearance. The movie is filled with the sounds of nature, from the easily identifiable -- such as a woodpecker hammering at a tree -- to the more mysterious and exotic. It brings a new dimension to the movie, and demonstrates just how important and effective sound can be, if handled skillfully.
Ramezani does terrific work here for such a young actor, delivering a very natural performance as Mohammad. When the boy cries during an emotional conversation with the carpenter, his grief is heartfelt and sincere. Ramezani is not overly cloying or cute; even a rather sentimental scene in which he rescues a baby bird which has fallen from its nest is not overplayed. Ramezani makes Mohammad believable.
Less successful is Mahjoub, whose demeanour borders at times on the preposterous. Majidi is wise not to portray Hashem as an entirely villainous figure -- his motives in seeking a new wife are sincere, even if his methods leave a lot to be desired. But Mahjoub cannot hope to compare to his young co-star's visceral portrayal, and this leaves Hashem seeming weak and underdeveloped. Whereas Ramezani embodies his character, Mahjoub feels very much like nothing more than an actor playing a role.
But although Majidi does an excellent job with the general presentation of "The Color Of Paradise", he is less successful in its actual development. These sorts of movies need a steady progression to maintain viewer interest, but Majidi's story just stops for long stretches of time. As a result, "The Color Of Paradise" makes for far less compelling watching than it ought to, and indeed the pacing is so somnabulent in places that I found myself almost disinterested. There just does not appear to be enough substance in the movie to support its feature-length running time; I think Majidi would have been far better served by transforming it into a short film.
Also unfortunate is the movie's ending, which is so contrived as to strain belief. It does, at least, deliver with an appropriate and moving pay-off which perfectly reflects the film's themes. But this is one of those cases when you can see the puppeteer's strings; the events of "The Color Of Paradise"'s climax appear to happen not because they are a natural development, but simply because they were required to end the movie.
As such, "The Color Of Paradise" ends up being a well-intentioned movie bogged down by clumsy filmmaking. Young people, who are presumably its target audience, will likely be particularly bored by its slow movement and lack of interesting characters (beyond Mohammad, of course). Ramezani's performance and the beautiful imagery are commendable, though, and ensure that a viewing of "The Color Of Paradise" is a memorable experience.
Copyright © 2000 Shannon Patrick Sullivan. Archived at The Popcorn Gallery, http://www.physics.mun.ca/~sps/movies/TheColorOfParadise.html
_______________________________________________________________________ / Shannon Patrick Sullivan | "We are all in the gutter, but some of us \ |<EMAIL_ADDRESS>| are looking at the stars." - Oscar Wilde | \___________________________|__________________________________________/ | Popcorn Gallery Movie Reviews www.physics.mun.ca/~sps/movies.html | | Doctor Who: A Brief History of Time (Travel) /drwho.html |
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


A filter formats the value of an expression for display to the user. They can be used in view templates, controllers or services and it is easy to define your own filter.
The underlying API is the filterProvider.
Filters can be applied to expressions in view templates using the following syntax:
{{ expression | filter }}
E.g. the markup {{ 12 | currency }}
formats the number 12 as a currency using the currency
filter. The resulting value is $12.00
.
Filters can be applied to the result of another filter. This is called "chaining" and uses the following syntax:
{{ expression | filter1 | filter2 | ... }}
Filters may have arguments. The syntax for this is
{{ expression | filter:argument1:argument2:... }}
E.g. the markup {{ 1234 | number:2 }}
formats the number 1234 with 2 decimal points using the
number
filter. The resulting value is 1,234.00
.
You can also use filters in controllers and services. For this, add a dependency with the name <filterName>Filter
to your controller or service. E.g. using the dependency numberFilter
will inject the number filter.
The injected argument is a function that takes the value to format as first argument and filter parameters
starting with the second argument.
The example below uses the filter called filter
.
This filter reduces arrays into sub arrays based on
conditions. The filter can be applied in the view template with markup like
{{ctrl.array | filter:'a'}}
, which would do a fulltext search for "a".
However, using a filter in a view template will reevaluate the filter on
every digest, which can be costly if the array is big.
The example below therefore calls the filter directly in the controller. By this, the controller is able to call the filter only when needed (e.g. when the data is loaded from the backend or the filter expression is changed).

All entries:
{{entry.name}}

Entries that contain an "a":
{{entry.name}}

angular.module('FilterInControllerModule', []).
controller('FilterController', ['filterFilter', function(filterFilter) {
this.array = [
{name: 'Tobias'},
{name: 'Jeff'},
{name: 'Brian'},
{name: 'Igor'},
{name: 'James'},
{name: 'Brad'}
];
this.filteredArray = filterFilter(this.array, 'a');
}]);
Writing your own filter is very easy: just register a new filter factory function with
your module. Internally, this uses the filterProvider
.
This factory function should return a new filter function which takes the input value
as the first argument. Any filter arguments are passed in as additional arguments to the filter
function.
The following sample filter reverses a text string. In addition, it conditionally makes the text upper-case.

<input ng-model="greeting" type="text">

No filter: {{greeting}}

Reverse: {{greeting|reverse}}

Reverse + uppercase: {{greeting|reverse:true}}

angular.module('MyReverseModule', []).
filter('reverse', function() {
return function(input, uppercase) {
var out = "";
for (var i = 0; i < input.length; i++) {
out = input.charAt(i) + out;
}
// conditional based on optional argument
if (uppercase) {
out = out.toUpperCase();
}
return out;
};
});
function Ctrl($scope) {
$scope.greeting = 'hello';
}
See the phonecat tutorial for an example.