/* Prototype for the glibc wrapper function */ #include <sched.h> int clone(int (*fn)(void *), void *child_stack, int flags, void *arg, ... /* pid_t *ptid, struct user_desc *tls, pid_t *ctid */ ); /* Prototype for the raw system call */ long clone(unsigned long flags, void *child_stack, void *ptid, void *ctid, struct pt_regs *regs);
Feature Test Macro Requirements for glibc wrapper function (see feature_test_macros(7)):
clone():
This page describes both the glibc clone() wrapper function and the underlying system call on which it is based. The main text describes the wrapper function; the differences for the raw system call are described toward the end of this page.
Unlike fork(2), clone() allows the child process to share parts of its execution context with the calling process, such as the memory space, the table of file descriptors, and the table of signal handlers. (Note that on this manual page, "calling process" normally corresponds to "parent process". But see the description of CLONE_PARENT below.)
The main use of clone() is to implement threads: multiple threads of control in a program that run concurrently in a shared memory space.
When the child process is created with clone(), it executes the function fn(arg). (This differs from fork(2), where execution continues in the child from the point of the fork(2) call.) The fn argument is a pointer to a function that is called by the child process at the beginning of its execution. The arg argument is passed to the fn function.
When the fn(arg) function application returns, the child process terminates. The integer returned by fn is the exit code for the child process. The child process may also terminate explicitly by calling exit(2) or after receiving a fatal signal.
The child_stack argument specifies the location of the stack used by the child process. Since the child and calling process may share memory, it is not possible for the child process to execute in the same stack as the calling process. The calling process must therefore set up memory space for the child stack and pass a pointer to this space to clone(). Stacks grow downward on all processors that run Linux (except the HP PA processors), so child_stack usually points to the topmost address of the memory space set up for the child stack.
The low byte of flags contains the number of the termination signal sent to the parent when the child dies. If this signal is specified as anything other than SIGCHLD, then the parent process must specify the __WALL or __WCLONE options when waiting for the child with wait(2). If no signal is specified, then the parent process is not signaled when the child terminates.
flags may also be bitwise-or'ed with zero or more of the following constants, in order to specify what is shared between the calling process and the child process:
If CLONE_FILES is not set, the child process inherits a copy of all file descriptors opened in the calling process at the time of clone(). (The duplicated file descriptors in the child refer to the same open file descriptions (see open(2)) as the corresponding file descriptors in the calling process.) Subsequent operations that open or close file descriptors, or change file descriptor flags, performed by either the calling process or the child process do not affect the other process.
If CLONE_FS is not set, the child process works on a copy of the filesystem information of the calling process at the time of the clone() call. Calls to chroot(2), chdir(2), umask(2) performed later by one of the processes do not affect the other process.
The I/O context is the I/O scope of the disk scheduler (i.e, what the I/O scheduler uses to model scheduling of a process's I/O). If processes share the same I/O context, they are treated as one by the I/O scheduler. As a consequence, they get to share disk time. For some I/O schedulers, if two processes share an I/O context, they will be allowed to interleave their disk access. If several threads are doing I/O on behalf of the same process (aio_read(3), for instance), they should employ CLONE_IO to get better I/O performance.
If the kernel is not configured with the CONFIG_BLOCK option, this flag is a no-op.
An IPC namespace provides an isolated view of System V IPC objects (see svipc(7)) and (since Linux 2.6.30) POSIX message queues (see mq_overview(7)). The common characteristic of these IPC mechanisms is that IPC objects are identified by mechanisms other than filesystem pathnames.
Objects created in an IPC namespace are visible to all other processes that are members of that namespace, but are not visible to processes in other IPC namespaces.
When an IPC namespace is destroyed (i.e., when the last process that is a member of the namespace terminates), all IPC objects in the namespace are automatically destroyed.
Use of this flag requires: a kernel configured with the CONFIG_SYSVIPC and CONFIG_IPC_NS options and that the process be privileged (CAP_SYS_ADMIN). This flag can't be specified in conjunction with CLONE_SYSVSEM.
If CLONE_NEWNET is set, then create the process in a new network namespace. If this flag is not set, then (as with fork(2)), the process is created in the same network namespace as the calling process. This flag is intended for the implementation of containers.
A network namespace provides an isolated view of the networking stack (network device interfaces, IPv4 and IPv6 protocol stacks, IP routing tables, firewall rules, the /proc/net and /sys/class/net directory trees, sockets, etc.). A physical network device can live in exactly one network namespace. A virtual network device ("veth") pair provides a pipe-like abstraction that can be used to create tunnels between network namespaces, and can be used to create a bridge to a physical network device in another namespace.
When a network namespace is freed (i.e., when the last process in the namespace terminates), its physical network devices are moved back to the initial network namespace (not to the parent of the process).
Use of this flag requires: a kernel configured with the CONFIG_NET_NS option and that the process be privileged (CAP_SYS_ADMIN).
Every process lives in a mount namespace. The namespace of a process is the data (the set of mounts) describing the file hierarchy as seen by that process. After a fork(2) or clone() where the CLONE_NEWNS flag is not set, the child lives in the same mount namespace as the parent. The system calls mount(2) and umount(2) change the mount namespace of the calling process, and hence affect all processes that live in the same namespace, but do not affect processes in a different mount namespace.
After a clone() where the CLONE_NEWNS flag is set, the cloned child is started in a new mount namespace, initialized with a copy of the namespace of the parent.
Only a privileged process (one having the CAP_SYS_ADMIN capability) may specify the CLONE_NEWNS flag. It is not permitted to specify both CLONE_NEWNS and CLONE_FS in the same clone() call.
A PID namespace provides an isolated environment for PIDs: PIDs in a new namespace start at 1, somewhat like a standalone system, and calls to fork(2), vfork(2), or clone() will produce processes with PIDs that are unique within the namespace.
The first process created in a new namespace (i.e., the process created using the CLONE_NEWPID flag) has the PID 1, and is the "init" process for the namespace. Children that are orphaned within the namespace will be reparented to this process rather than init(8). Unlike the traditional init process, the "init" process of a PID namespace can terminate, and if it does, all of the processes in the namespace are terminated.
PID namespaces form a hierarchy. When a new PID namespace is created, the processes in that namespace are visible in the PID namespace of the process that created the new namespace; analogously, if the parent PID namespace is itself the child of another PID namespace, then processes in the child and parent PID namespaces will both be visible in the grandparent PID namespace. Conversely, the processes in the "child" PID namespace do not see the processes in the parent namespace. The existence of a namespace hierarchy means that each process may now have multiple PIDs: one for each namespace in which it is visible; each of these PIDs is unique within the corresponding namespace. (A call to getpid(2) always returns the PID associated with the namespace in which the process lives.)
After creating the new namespace, it is useful for the child to change its root directory and mount a new procfs instance at /proc so that tools such as ps(1) work correctly. (If CLONE_NEWNS is also included in flags, then it isn't necessary to change the root directory: a new procfs instance can be mounted directly over /proc.)
Use of this flag requires: a kernel configured with the CONFIG_PID_NS option and that the process be privileged (CAP_SYS_ADMIN). This flag can't be specified in conjunction with CLONE_THREAD.
A UTS namespace is the set of identifiers returned by uname(2); among these, the domain name and the hostname can be modified by setdomainname(2) and sethostname(2), respectively. Changes made to the identifiers in a UTS namespace are visible to all other processes in the same namespace, but are not visible to processes in other UTS namespaces.
Use of this flag requires: a kernel configured with the CONFIG_UTS_NS option and that the process be privileged (CAP_SYS_ADMIN).
If CLONE_PARENT is not set, then (as with fork(2)) the child's parent is the calling process.
Note that it is the parent process, as returned by getppid(2), which is signaled when the child terminates, so that if CLONE_PARENT is set, then the parent of the calling process, rather than the calling process itself, will be signaled.
If CLONE_SIGHAND is not set, the child process inherits a copy of the signal handlers of the calling process at the time clone() is called. Calls to sigaction(2) performed later by one of the processes have no effect on the other process.
Since Linux 2.6.0-test6, flags must also include CLONE_VM if CLONE_SIGHAND is specified
This flag was deprecated from Linux 2.6.25 onward, and was removed altogether in Linux 2.6.38.
Thread groups were a feature added in Linux 2.4 to support the POSIX threads notion of a set of threads that share a single PID. Internally, this shared PID is the so-called thread group identifier (TGID) for the thread group. Since Linux 2.4, calls to getpid(2) return the TGID of the caller.
The threads within a group can be distinguished by their (system-wide) unique thread IDs (TID). A new thread's TID is available as the function result returned to the caller of clone(), and a thread can obtain its own TID using gettid(2).
When a call is made to clone() without specifying CLONE_THREAD, then the resulting thread is placed in a new thread group whose TGID is the same as the thread's TID. This thread is the leader of the new thread group.
A new thread created with CLONE_THREAD has the same parent process as the caller of clone() (i.e., like CLONE_PARENT), so that calls to getppid(2) return the same value for all of the threads in a thread group. When a CLONE_THREAD thread terminates, the thread that created it using clone() is not sent a SIGCHLD (or other termination) signal; nor can the status of such a thread be obtained using wait(2). (The thread is said to be detached.)
After all of the threads in a thread group terminate the parent process of the thread group is sent a SIGCHLD (or other termination) signal.
If any of the threads in a thread group performs an execve(2), then all threads other than the thread group leader are terminated, and the new program is executed in the thread group leader.
If one of the threads in a thread group creates a child using fork(2), then any thread in the group can wait(2) for that child.
Since Linux 2.5.35, flags must also include CLONE_SIGHAND if CLONE_THREAD is specified (and note that, since Linux 2.6.0-test6, CLONE_SIGHAND also requires CLONE_VM to be included).
Signals may be sent to a thread group as a whole (i.e., a TGID) using kill(2), or to a specific thread (i.e., TID) using tgkill(2).
Signal dispositions and actions are process-wide: if an unhandled signal is delivered to a thread, then it will affect (terminate, stop, continue, be ignored in) all members of the thread group.
Each thread has its own signal mask, as set by sigprocmask(2), but signals can be pending either: for the whole process (i.e., deliverable to any member of the thread group), when sent with kill(2); or for an individual thread, when sent with tgkill(2). A call to sigpending(2) returns a signal set that is the union of the signals pending for the whole process and the signals that are pending for the calling thread.
If kill(2) is used to send a signal to a thread group, and the thread group has installed a handler for the signal, then the handler will be invoked in exactly one, arbitrarily selected member of the thread group that has not blocked the signal. If multiple threads in a group are waiting to accept the same signal using sigwaitinfo(2), the kernel will arbitrarily select one of these threads to receive a signal sent using kill(2).
If CLONE_VFORK is not set, then both the calling process and the child are schedulable after the call, and an application should not rely on execution occurring in any particular order.
If CLONE_VM is not set, the child process runs in a separate copy of the memory space of the calling process at the time of clone(). Memory writes or file mappings/unmappings performed by one of the processes do not affect the other, as with fork(2).
long clone(unsigned long flags, void *child_stack, void *ptid, void *ctid, struct pt_regs *regs);Another difference for the raw system call is that the child_stack argument may be zero, in which case copy-on-write semantics ensure that the child gets separate copies of stack pages when either process modifies the stack. In this case, for correct operation, the CLONE_VM option should not be specified.
For some architectures, the order of the arguments for the system call differs from that shown above. On the score, microblaze, ARM, ARM 64, PA-RISC, arc, Power PC, xtensa, and MIPS architectures, the order of the fourth and fifth arguments is reversed. On the cris and s390 architectures, the order of the first and second arguments is reversed.
int __clone2(int (*fn)(void *), void *child_stack_base, size_t stack_size, int flags, void *arg, ... /* pid_t *ptid, struct user_desc *tls, pid_t *ctid */ );
The prototype shown above is for the glibc wrapper function; the raw system call interface has no fn or arg argument, and changes the order of the arguments so that flags is the first argument, and tls is the last argument.
__clone2() operates in the same way as clone(), except that child_stack_base points to the lowest address of the child's stack area, and stack_size specifies the size of the stack pointed to by child_stack_base.
For a while there was CLONE_DETACHED (introduced in 2.5.32): parent wants no child-exit signal. In 2.6.2 the need to give this together with CLONE_THREAD disappeared. This flag is still defined, but has no effect.
On i386, clone() should not be called through vsyscall, but directly through int $0x80.
#include <syscall.h> pid_t mypid; mypid = syscall(SYS_getpid);
#define _GNU_SOURCE #include <sys/wait.h> #include <sys/utsname.h> #include <sched.h> #include <string.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \ } while (0) static int /* Start function for cloned child */ childFunc(void *arg) { struct utsname uts; /* Change hostname in UTS namespace of child */ if (sethostname(arg, strlen(arg)) == -1) errExit("sethostname"); /* Retrieve and display hostname */ if (uname(&uts) == -1) errExit("uname"); printf("uts.nodename in child: %s\n", uts.nodename); /* Keep the namespace open for a while, by sleeping. This allows some experimentation--for example, another process might join the namespace. */ sleep(200); return 0; /* Child terminates now */ } #define STACK_SIZE (1024 * 1024) /* Stack size for cloned child */ int main(int argc, char *argv[]) { char *stack; /* Start of stack buffer */ char *stackTop; /* End of stack buffer */ pid_t pid; struct utsname uts; if (argc < 2) { fprintf(stderr, "Usage: %s <child-hostname>\n", argv[0]); exit(EXIT_SUCCESS); } /* Allocate stack for child */ stack = malloc(STACK_SIZE); if (stack == NULL) errExit("malloc"); stackTop = stack + STACK_SIZE; /* Assume stack grows downward */ /* Create child that has its own UTS namespace; child commences execution in childFunc() */ pid = clone(childFunc, stackTop, CLONE_NEWUTS | SIGCHLD, argv[1]); if (pid == -1) errExit("clone"); printf("clone() returned %ld\n", (long) pid); /* Parent falls through to here */ sleep(1); /* Give child time to change its hostname */ /* Display hostname in parent's UTS namespace. This will be different from hostname in child's UTS namespace. */ if (uname(&uts) == -1) errExit("uname"); printf("uts.nodename in parent: %s\n", uts.nodename); if (waitpid(pid, NULL, 0) == -1) /* Wait for child */ errExit("waitpid"); printf("child has terminated\n"); exit(EXIT_SUCCESS); }


{{ define "main" }} {{ partial "page-title.html" . }} {{ $YoutubeUrlPre := "https://api.github.com" }} {{ $videos := getJSON $YoutubeUrlPre "/users/vedacomputing/gists" }} {{ range $videos }} {{.name}} {{.description}} {{ else }} No Tutorials have being Uploaded, Sorry. {{end}} {{ end }}
{{.description}}
No Tutorials have being Uploaded, Sorry.


In this build step you can select which test-suites your job should run.
Note that the path for a test-suite or parent folder has to be relative to the workspace, which has to be specified above under "Advanced Project Options - Use custom workspace".
Examples:
-"Suites/MySuite/some_suite.qft" only runs one test-suite
-"Suites/MySuite" runs all test-suites in the MySuite folder
-"*" runs all test-suites in your workspace
Any of these command line arguments under the label "Test execution" can be used for the execution of your test-suites.
For the post-build actions to work, make sure to provide the correct paths to the logs and reports:
Archive the artifacts: qftestJenkinsReports/$JOB_NAME/$BUILD_NUMBER/logs/*.q*
Publish HTML reports: qftestJenkinsReports/$JOB_NAME/$BUILD_NUMBER/html/ and change index.html to report.html
Publish JUnit test result report: qftestJenkinsReports/$JOB_NAME/$BUILD_NUMBER/junit/report_junit.xml
For further information please see the QF-Test manual.


My Faculty
Dashboard
Departments
Settings
Exit
Title
Departments
Settings
Item 3
Statistics:
Departments:
Users:


Flight 36:
Second time a booster was reused: second flight of B1029 after the Iridium mission of January 2017. BulgariaSat-1 is the first commercial Bulgarian-owned communications satellite and will provide television broadcasts and other communications services over southeast Europe. -wiki


Usage¶
First, make sure you have installed odgi
(see Installation).
Then, export the following
export LD_PRELOAD=/lib/x86_64-linux-gnu/libjemalloc.so.2
to tell the dynamic linker to bind symbols provided by the jemalloc
shared library before other libraries.
To import odgi
in Python
, make sure that the compiled lib/odgi.cpython*.so
file is in your PYTHONPATH
or
added to your Python
path through sys.path.append
. For example, assuming that your current working directory is
the root of the odgi
project, the following code should not lead to errors:
import sys
sys.path.append("./lib")
import odgi


As part of the Firefox family, Pocket provides a quiet, calm space that’s perfect for reading. It strips away all the distractions of the internet so you can really focus.
Sign Up - it's freeAs part of the Firefox family, Pocket surfaces the best articles out there—new perspectives, intriguing deep-dives, timeless classics—and we do this with the same dedication to privacy you’ve come to expect from Firefox and Mozilla.


{% extends "base.html" %} {% block page_styles %} {% endblock %} {% block navbar %} {% include 'navbar.html' %} {% endblock %} {% block content %}
Welcome to the {{ config['POOL_NAME'] }} virtual appliance! Start configuring your appliance by clicking on the get started button. Configuration takes about 10 minutes! If you need help with configuration, please see the documentation!
Get Started Now!Everything you see here is Open Source and free to use by anyone, anywhere, at any time. The Bitcoin methodology teaches high decentralization and trust of all components, including infrastructure hardware and software.
Run Your Own PoolThe OpenStack Project provides the cloud controller fabric for the {{ config['POOL_NAME'] }} compute pool. OpenStack can run on anything from a single desktop computer to an entire datacenter. Get started by installing OpenStack today!
Install OpenStack“Mankind's future depends on building a decentralized cloud run by many and trusted by all.”
Kord Campbell, Founder


{{ label || 'This field' }} is required
{{ label || 'This field' }} must be at least {{ error.requiredLength | number }} characters long
{{ label || 'This field' }} must be at most {{ error.requiredLength | number }} characters long
{{ label || 'This field' }} doesn't have the required format
{{ label || 'This field' }} must be a valid email address
{{ label || 'This field' }} must be at least {{ error.min | number }}
{{ label || 'This field' }} must be at most {{ error.max | number }}


Parents, at SNC we use adventure, learning and kindness all in a natural setting to promote each child's personal development. Campers tell us that our nurturing atmosphere gives them confidence to make friends easily.
Yet most rewarding is hearing that SNC allows each camper to truly be themselves. When your SNC camper returns home more responsible, resilient and kinder, you will know your decision to send your child to SNC was the right one.
Read More


The air in the room was just sufficiently warmer than outside to put a mist on the glass panes set in the red-painted casements, and the glass contained bubbles besides, but Cadsuane stood peering out as if she could see the dreary landscape clearly. She could see with more than enough clarity, in any case. A few hapless folk, bundled and hatted and only shapeless skirts or baggy breeches distinguishing men from women, were trudging the muddy fields that surrounded the manor house, sometimes stooping to feel a handful of the soil. It would not be long before they could begin their plowing and manuring, but only their inspection indicated the coming of spring any time soon. Beyond the fields, the forest was all dark bare branches against a washed-out gray morning sky. A good coating of snow would have made the view much less bleak, but it snowed lightly and seldom here, with traces of one fall rarely lasting until the next. Still, she could think of few places better for her purposes, with the Spine of the World little more than a day’s hard ride to the east. Who would think to look inside the borders of Tear? Had convincing the boy to stay here been too easy, though? With a sigh, she turned from the window, feeling the golden ornaments hanging in her hair sway, the small moons and stars, birds and fish. She was very aware of them, of late. Aware? Phaw! Of late, she had considered sleeping with them in place.
The sitting room was large but not ornate, like the manor house itself, with cornices of carved wood, painted red. The furniture was bright with paint but not a touch of gilding, the two long fireplaces plain stone if well made, the and irons sturdy wrought metal made for long service rather than appearances. The fires on the hearths were small, at her insistence, the flames flickering low on half-consumed splits, but either was enough to warm her hands, which was all she wanted. Left to his own devices, Algarin would have surrounded her with blazing warmth and smothered her in servants, few as he still employed. A lesser Lord of the Land, he was far from wealthy, yet he paid his debts in letter and spirit, even when most other men would have seen quite the reverse of a debt.
The uncarved door to the hall creaked open—most of Algarin’s servants were nearly as old as he, and though they kept everything dusted and neat, the lamps topped with oil and the wicks trimmed, hinges in the manor seemed to escape regular oiling—the door creaked open to admit Verin, still dressed for a journey in simple brown wool with divided skirts and carrying her cloak over her arm, still patting her gray-streaked hair into place.  “Well, the Sea Folk are delivered to Tear, Cadsuane. I didn’t go near the Stone, but I heard that High Lord Astoril stopped complaining about his creaking joints and mustered inside with Darlin. Who’d have thought Astoril would stir himself, and on Darlin’s side?  There are as many Sea Folk in the city as everyone else put together. Harine was aghast. She went rushing out to the ships as soon as she could hire a boat, expecting to be declared Mistress of the Ships and set everything to rights. There seems no doubt that Nesta din Reas is dead.”
Cadsuane was content to let the round little woman chatter on. Verin was not nearly so vague as she pretended. Some Browns really were capable of tripping over their own feet from not noticing them, but Verin was one of those who wore an assumed cloak of unworldliness. She seemed to believe that Cadsuane accepted the cloak for reality, yet if there was a point to be made, she would make it. And what she left out might be revealing, too. Cadsuane was less sure of the other sister than she might have wished. Uncertainty was a fact of life, but she was uncertain about entirely too many things to suit her.
Unfortunately, Min must have been listening at the door, and that young woman had little patience. “I told Harine it wouldn’t be like that,” she protested, bursting into the room. “I told her she’d be punished for the bargain she made with Rand. Only after that will she become Mistress of the Ships, and I can’t say if it will be ten days from now or ten years.” Slim and pretty, and tall in her red-heeled boots, with dark ringlets hanging to her shoulders, Min had a low womanly voice, but she wore a boy’s red coat and blue breeches. The coat was embroidered with colorful flowers on the lapels and up the sleeves, and the breeches in bands down the outsides of the legs, but they were still coat and breeches.
“You may come in, Min,” Cadsuane said quietly. It was a tone that usually made people sit up and take notice. Those who knew her at all, anyway. Spots of color appeared in Min’s cheeks. “The Wavemistress has already learned all she is going to from your viewing, I fear. But from your urgency, perhaps you’ve read someone else’s auras and wish to tell me what you saw?” The girl’s peculiar ability had proved helpful in the past and doubtless could again. Perhaps. As far as Cadsuane could tell, she did not lie about what she saw in the images and auras that she perceived floating around people, but she was not always forthcoming, either. Particularly not when it came to the one person Cadsuane would have liked to know about above all others.
Red cheeks or no red cheeks, Min raised her chin stubbornly. She had changed since Shadar Logoth, or perhaps it had begun earlier, but either way, the change was not for the better. “Rand wants you to come see him. He said to ask, so you needn’t get snippy over it.”
Cadsuane merely looked at her and let the silence stretch. Snippy? Definitely not for the better. “Tell him I will come when I am able,” she said finally. “Close the door firmly behind you, Min.” The young woman opened her mouth as if to say something more, but at least she retained sense enough to leave it unsaid.  Just barely short of slamming it, in fact.
 “She’s in love with the young man, Cadsuane, and she’s tucked her heart in his pocket. She’ll follow that before her head, whatever you say or do. I think she’s afraid he almost died on her, and you know how that can make a woman determined to hang on.”
Cadsuane’s lips thinned. Verin knew more about that sort of relations with men than she did—she had never believed in indulging with her own Warders, as some Greens did, and other men had always been out of the question—but the Brown had hit close to a truth without knowing. At least, Cadsuane did not think the other sister knew Min was bonded to the al’Thor boy. She herself only knew because the girl had let too much slip in a careless moment. Even the tightest mussel eventually yielded its meat once you got that first small crack in the shell. Sometimes it gave up an unexpected pearl, as well. Yes, Min would want to keep the lad alive whether she loved him or not, but no more than Cadsuane did.
Draping her cloak on the tall back of a chair, Verin moved to the nearest fireplace and stretched out her hands to warm them in front of the low flames. You could not say that Verin glided, but she was more graceful than her bulk suggested. How much of her was deception? Every Aes Sedai hid behind various masks, over time. It became habit after a while. “I believe the situation in Tear may be resolved peacefully yet,” she said, peering into the fire. She might have been talking to herself. Or wanted Cadsuane to think it. “Hearne and Simaan are growing quite desperate, afraid the other High Lords will return from Illian and trap them in the city. They may be amenable to accepting Darlin, given their other choices. Estanda is made of sterner stuff, but if she can be convinced there’s advantage for her in it—”
“I told you not to go near them,” Cadsuane broke in sternly.
The stout woman blinked at her in surprise. “I didn’t.  I did see Alanna and Rafela, but I ducked behind a fellow hawking meat pies from a barrow before they saw me. I’m sure they didn’t.” She paused, clearly waiting for Cadsuane to explain why she had been told to avoid the sisters as well.
“I have to go to the boy now, Verin,” Cadsuane said instead. That was the trouble with agreeing to advise someone. Even when you managed to set all the conditions you could wish for—most of them, anyway—you still had to come sooner or later when they called. Eventually. But it did give her a reason to evade Verin’s curiosity. The answer was simple. If you tried to solve every problem yourself, you ended by solving none. And with some problems, how they were solved really did not matter in the long run. But not answering left Verin with a puzzle to ponder, a little butter for her paws. When Cadsuane was unsure of someone, she wanted them unsure of her, too.
Verin gathered up her cloak and left the room with her. Did the other woman mean to accompany her? But outside the sitting room, they encountered Nesune walking briskly down the hall. She came to a sudden halt.
“You’re back then, are you?” The best of Browns did have a way of stating the obvious. “You wrote a paper on animals of the Drowned Lands, as I recall.” Which meant that Verin had; Nesune recalled everything she had ever seen—a useful skill, if Cadsuane had been sure enough of her to make use of it. “Lord Algarin showed me the skin of a large snake he claims came from the Drowned Lands, but I’m convinced it is the same as I observed . . . ” Verin glanced helplessly at Cadsuane over her shoulder as the taller woman drew her away by her sleeve, but before they were three steps along the corridor, she was deep in discussion over this fool snake.
It was a remarkable sight, and troubling in a way. Nesune was loyal to Elaida, or had been, while Verin was one of those who wanted to pull Elaida down. Or had been. Now they talked amiably about snakes. That both had sworn fealty to the al’Thor boy could be laid to his being ta’veren, winding the Pattern around himself unconsciously, but was that oath sufficient to make them ignore their opposition over who held the Amyrlin Seat? Or were they affected by having a ta’veren in close proximity? She would have liked very much to know that. None of her ornaments protected against ta’veren. Of course, she did not know what two of the fish and one of the moons did, but it seemed unlikely they did that. It could have been as simple as Verin and Nesune both being Brown. Browns could forget everything else when they settled to study something. Snakes. Phaw! The small ornaments swayed as she shook her head before turning away, leaving the two receding Browns behind. What did the boy want? She had never liked being an advisor, necessary or not.
Drafts along the corridors rippled the few tapestries on the walls, all in old styles and showing the wear of having been taken down and rehung many times. The manor house had grown like a rambling farmhouse rather than being built large, with additions added whenever the family’s fortunes and numbers waxed. House Pendaloan had never been wealthy, but there had been times they were numerous. The results showed in more than worn, old-fashioned wall hangings. The cornices were brightly painted, red or blue or yellow, but the hallways varied in width and height, and sometimes met at a slight skew. Windows that once had looked to the fields now looked down on courtyards, usually bare except for a few benches and placed purely to provide light. Sometimes there was no choice in getting from here to there except to take a roofed colonnade overlooking one of those courtyards. The columns were wooden more often than not, though bravely painted even where not carved.
On one of those walkways, with fat green columns, two sisters were standing together watching the activity in the courtyard below. At least, they were watching together when Cadsuane opened the door to the colonnade. Beldeine saw her step out, and stiffened, twitching at the green-fringed shawl she had worn fewer than five years. Pretty, with her high cheekbones and a slight tilt to her brown eyes, she had not yet achieved agelessness, and looked younger than Min, particularly when she shot Cadsuane a frosty stare and hurried from the colonnade in the other direction.
Merise, her companion, smiled after her in amusement, shifting her own green-fringed shawl slightly. Tall and usually quite serious, with her hair drawn back tightly from her pale face, Merise was not a woman who smiled often. “Beldeine, she is becoming concerned that she has no Warder yet,” she said in the accents of Tarabon as Cadsuane stopped beside her, though her blue eyes returned to the courtyard. “She seems to be considering an Asha’man, if she can find one. I told her to talk to Daigian. If it does not help her, it will help Daigian.”
All of the Warders they had with them were gathered in the stone-paved yard, in their shirtsleeves despite the cold, most seated on painted wooden benches watching two of their number work with wooden practice swords. Jahar, one of Merise’s three, was a pretty, sun-dark young man. The silver bells fastened to the ends of his two long braids chimed with the fury of his attack. He moved like a striking blacklance. Not a breath of breeze stirred, but the eight-pointed star, like a golden compass rose, seemed to shift against Cadsuane’s hair. Had it been held in her hand, she could have felt it vibrating clearly. But then, she already knew that Jahar was an Asha’man, and the star would not have pointed him out, merely told her that a man who could channel was nearby. The more men who could channel, the harder the star quivered, she had learned. Jahar’s opponent, a very tall, broad-shouldered fellow with a stone face and a braided leather cord around his graying temples to hold back shoulder-length hair, was not the second Asha’man down there, but he was as deadly in his own way. Lan did not really seem to move that fast, but he . . . flowed. His blade of bundled laths was always there to deflect Jahar’s, always moving the younger man just a touch more out of his line.
Suddenly, Lan’s wooden blade struck Jahar’s side with a resounding crack, a killing blow given with steel. While the younger man was still flinching from the force of the strike, Lan flowed back into a ready stance, long blade upright in his hands. Nethan, another of Merise’s, rose to his feet, a lean fellow with wings of white at his temples and tall, if still a hand or more shorter than Lan. Jahar waved him away and raised his practice blade again, loudly demanding another go.
“Is Daigian still bearing up?” Cadsuane asked.
“Better than I expected,” Merise admitted. “She stays in her room too much, but she keeps her weeping private.” Her gaze shifted from the men dancing their swords to a green-painted bench where Verin’s stocky gray-haired Tomas sat next to a grizzled fellow with only a fringe of white hair remaining. “Damer, he wanted to try his Healing on her, but Daigian refused. She may never have had a Warder before, but she knows that the grieving over a dead Warder is part of remembering him. I am surprised that Corele would consider allowing it.”
With a shake of her head, the Taraboner sister returned to studying Jahar. Other sisters’ Warders did not really interest her, at least not like her own. “Asha’man, they grieve as Warders do. I thought perhaps Jahar and Damer merely followed the lead of the others, but Jahar, he says it is their way, too. I did not intrude, of course, but I watched them drink in memory of Daigian’s young Eben. They never mentioned his name, but they had a full winecup sitting for him.  Jahar expects to die; every day he expects it. To him, every hour is most assuredly his last.”
Cadsuane barely refrained from glancing at the other woman. Merise did not often go on at such length. The other woman’s face was smooth, her manner unruffled, but something had upset her. “I know you practice linking with him,” she said delicately, peering down into the courtyard. Delicacy was required in talking to another sister about her Warder. That was part of the reason she stared into the courtyard, frowning. “Have you decided yet whether the al’Thor boy succeeded at Shadar Logoth? Did he really manage to cleanse the male half of the Source?”
Corele practiced linking with Damer, too, but the Yellow was so focused on her futile efforts to reason out how to do with saidar what he did with saidin that she would not have noticed the Dark One’s taint sliding down her throat. A pity she herself had not come to the shawl fifty years later than she had, or she would have bonded one of the men herself and had no need to ask. But fifty years would have meant that Norla died in her little house in the Black Hills before Cadsuane Melaidhrin ever went to the White Tower. That would have altered a great deal of history. For one thing, it would have been unlikely that she would be in anything approaching her present circumstances. So she asked, delicately, and waited.
Merise was quiet, and still, for a long moment, and then she sighed. “I do not know, Cadsuane. Saidar is a calm ocean that will take you wherever you want so long as you know the currents and let them carry you. Saidin . . . An avalanche of burning stone. Collapsing mountains of ice. It feels cleaner than when I first linked with Jahar, but anything could hide in that chaos. Anything.”
Cadsuane nodded. She was not sure she had expected any other answer. Why should she find any certainty about one of the two most important questions in the world when she could find none on so many simpler matters? In the courtyard, Lan’s wooden blade stopped, not with a crack this time, just touching Jahar’s throat, and the bigger man flowed back to his waiting stance. Nethan stood again, and again Jahar waved him back, angrily raising his sword and setting himself. Merise’s third, Bassane, a short wide fellow nearly as sun-dark as Jahar for all he was Cairhienin, laughed and made a rude comment about over-ambitious men tripping on their own blades. Tomas and Damer exchanged glances and shook their heads; men of that age usually had given up taunting long ago. The clack of wood on wood began once more.
The other four Warders were not the only audience for Lan and Jahar in the courtyard. The slim girl with her dark hair in a long braid, watching anxiously from a red bench, was the focus of Cadsuane’s frown. The child would need to flash her Great Serpent ring under people’s noses to be taken for Aes Sedai, which she was, if just technically. It was not only because Nynaeve’s face was a girl’s face; Beldeine still seemed as young. Nynaeve bounced on the bench, always on the point of leaping up. Occasionally her mouth moved as if she were silently shouting encouragement, and sometimes her hands twisted as though demonstrating how Lan should have moved his sword.  Min was not the only one to have thrown her heart and head both down the well over a man. By the customs of dead Malkier, the red dot painted on Nynaeve’s forehead indicated her marriage to Lan, though Yellows seldom married their Warders. Very few sisters did, for that matter. And of course, Lan was not Nynaeve’s Warder, however much he and the girl pretended otherwise. Who he did belong to was a matter they evaded like thieves slipping through the night.
More interesting, more disturbing, was the jewelry Nynaeve wore, a long gold necklace and slim gold belt, with matching bracelets and finger rings, the gaudy red and green and blue gems that studded them clashing with her yellow-slashed dress. And she wore that peculiar piece as well, on her left hand, golden rings attached to a golden bracelet by flat chains. That was an angreal, much stronger than Cadsuane’s shrike hair ornament. The others were much like her own decorations, too, ter’angreal and plainly made at the same time, during the Breaking of the World, when an Aes Sedai might find many hands turned against her, most especially those of men who could channel. Strange to think that they had been called Aes Sedai, too. It would be like meeting a man called Cadsuane.
The question—her morning seemed filled with questions, and the sun not halfway to noon yet—the question was, did the girl wear her jewelry because of the al’Thor boy, or the Asha’man? Or because of Cadsuane Melaidhrin? Nynaeve had demonstrated her loyalty to a young man from her own village, and she had shown her wariness of him as well. She did have a brain, when she chose to use it. Until that question was answered, however, trusting the girl too far was dangerous. The trouble was, little these days did not seem dangerous.
“Jahar is growing stronger,” Merise said abruptly.
For an instant, Cadsuane frowned at the other Green. Stronger? The young man’s shirt was beginning to cling damply to his back, while Lan appeared not to have broken his first sweat. Then she understood. Merise meant in the Power. Cadsuane only raised a questioning eyebrow, though. She could not recall the last time she had let shock reach her face. It might have been all those years ago, in the Black Hills, when she began earning the ornaments she now wore.
“At first, I thought the way these Asha’man train, the forcing, had pushed him to his full strength already,” Merise said, frowning down at the two men working their practice blades. No; it was at Jahar she was frowning. Just a faint crinkle of her eyes, but she reserved her frowns for those who could see and know her displeasure. “At Shadar Logoth, I thought I must be imagining it. Three or four days ago, I was half convinced I was mistaken. Now, I am sure I am correct. If men gain strength by fits and starts, there is no saying how strong he will become.”
She did not voice her obvious worry, of course: that he might grow stronger than she. Saying such a thing would have been unthinkable on many different levels, and while Merise had become somewhat accustomed to doing the unthinkable—most sisters would faint at the very idea of bonding a man who could channel—she was never comfortable giving them voice. Cadsuane was, yet she kept her voice neutral. Light, but she hated being delicate. Hated the necessity, anyway.
“He seems content, Merise.” Merise’s Warders always seemed content; she handled them well.
“He is in a fury of . . . ” The other woman touched the side of her head as though fingering the bundle of sensations she felt through the bond. She really was upset! “Not rage. Frustration.” Reaching into her green worked-leather belt pouch, she took out a small enameled pin, a sinuous figure in red and gold, like a snake with legs and a lion’s mane. “I do not know where the al’Thor lad got this, but he gave it to Jahar. Apparently, for Asha’man, it is akin to attaining the shawl. I had to take it away, of course; Jahar, he is still at the stage where he has to learn to accept only what I say he can.  Should I give it back to him? In a way, it would come from my hand, then.”
Cadsuane’s eyebrows began to climb before she could control them. Merise was asking advice about one of her Warders? Of course, Cadsuane had suggested she sound the man out in the first place, but this degree of intimacy was . . . Unthinkable? Phaw! “I’m sure whatever you decide will be correct.”
With one last glance at Nynaeve, she left the taller woman stroking the enameled pin with her thumb and frowning down into the courtyard. Lan had just defeated Jahar once more, but the young man was squaring up again, demanding yet another match. Whatever Merise decided, she had already learned one thing she did not like. The boundaries between Aes Sedai and Warders had always been as clear as the connections; Aes Sedai commanded, and Warders obeyed. But if Merise, of all people, was dithering over a collar pin—Merise, who managed her Warders with a firm hand—then new boundaries would have to be worked out, at least with Warders who could channel. It seemed unlikely that bonding them would stop now; Beldeine was evidence for that. People never really changed, yet the world did, with disturbing regularity. You just had to live with it, or at least live through it. Now and then, with luck, you could affect the direction of the changes, but even if you stopped one, you only set another in motion.
As expected, she did not find the door to the al’Thor boy’s rooms unguarded. Alivia was there, of course, seated on a bench to one side of the door with her hands folded patiently in her lap. The pale-haired Seanchan woman had appointed herself the boy’s protector, of sorts. Alivia credited him with freeing her from a damane’s collar, but there was more to it than that. Min disliked her, for one thing, and it was not the usual sort of jealousy. Alivia hardly seemed to know what men and women did together. But there was a connection between her and the boy, a connection revealed in glances that carried determination on her side and on his, hope, hard as that was to believe. Until Cadsuane knew what that was all about, she intended to do nothing to separate them. Alivia’s sharp blue eyes regarded Cadsuane with a respectful wariness, but she did not see an enemy. Alivia had a short way with those she considered the al’Thor boy’s enemies.
The other woman on guard was much of a size with Alivia, but the two could not have been more different, and not just because Elza’s eyes were brown and she had the smooth, ageless look of Aes Sedai, where Alivia had fine lines at the corners of her eyes and threads of white almost hidden in her hair. Elza leaped to her feet as soon as she saw Cadsuane, drawing herself up in front of the door and wrapping herself tight in her shawl. “He is not alone,” she said, frost riming her voice.
“Do you mean to stand in my way?” Cadsuane asked, just as coldly. The Andoran Green should have moved aside. Elza stood far enough below her in the Power that she should not have hesitated, much less waited, for a command, but the woman planted her feet, and her gaze actually grew heated.
It was a quandary. Five other sisters in the manor house sworn fealty to the boy, and those who had been loyal to Elaida all stared at Cadsuane as if suspicious of her intentions toward him. Which raised the question of why Verin did not, of course. But only Elza tried to keep her away from him. The woman’s attitude reeked of jealousy, which made no sense. She could not possibly believe herself better suited to advise him, and if there had been any suggestion that Elza desired the boy, as a man or a Warder, Min would have been snarling. The girl had finely honed instincts, there. Cadsuane would have ground her teeth, had she been the sort of woman to grind her teeth.
At the point when she thought she would have to order Elza to step aside, Alivia leaned forward. “He did send for her, Elza,” she drawled. “He’ll be upset if we keep her out. Upset with us, not her. Let her in.”
Elza glanced at the Seanchan woman from the corner of her eye, and her lip curled in contempt. Alivia stood far above her in the Power—Alivia stood well above Cadsuane, for that matter—but she was a wilder, and a liar in Elza’s view. The dark-haired woman hardly seemed to accept that Alivia had been damane, much less the rest of her story. Still, Elza darted a look at Cadsuane, then at the door behind her, and shifted her shawl. Plainly, she did not want the boy upset. Not with her.
“I’ll see whether he’s ready for you,” she said, very near to sullen. “Keep her here,” she added to Alivia, more sharply, before turning to knock lightly at the door. A male voice called from the other side, and she opened the door just wide enough to slip in, pulling it shut behind her.
“You’ll have to forgive her,” Alivia said in that irritatingly slow, soft Seanchan accent. “I think it’s just that she takes her oath very seriously. She isn’t used to serving anyone.”
“Aes Sedai keep their word,” Cadsuane replied dryly. The woman made her feel as if her own way of talking were as quick and crisp as a Cairhienin’s! “We must.”
“I think you do. Just so you know, I keep my word, too. I owe him anything he wants of me.”
A fascinating comment, and an opening, but before she could take advantage of it, Elza came out. Behind her came Algarin, white beard trimmed to a neat point. He offered Cadsuane a bow, with a smile that deepened the wrinkles of his face. His plain coat of dark wool, made in his younger days, hung loosely on him now, and the hair on his head provided a thin covering. There was no chance to find out why he had been visiting the al’Thor boy.
“He will see you now,” Elza said sharply.
Cadsuane very nearly did grind her teeth. Alivia would have to wait. And Algarin.
The boy was on his feet when Cadsuane entered, almost as tall and broad-shouldered as Lan in a black coat worked with gold on the sleeves and the high collar. It was too much like an Asha’man’s coat with embroidery added to suit her, but she said nothing. He made a courteous bow, ushering her to a chair with a tasseled cushion in front of the fireplace and asking whether she would like wine. That in the pitcher sitting on a side table with two winecups had gone cold, but he could send for more. She had worked hard enough to force him into civility; he could wear any coat he wanted. There were more important matters he had to be guided in. Or prodded, or pulled as need be. She was not going to waste time or talk on his clothing.
Inclining her head politely, she declined the wine. A winecup offered many opportunities—to sip when you needed a moment’s thought; to peer into when you wished to hide your eyes—yet this young man needed watching every moment. His face gave away almost as little as a sister’s. With that dark reddish hair and those blue-gray eyes, he could have passed for Aiel, but few Aiel had eyes that cold. They made the morning sky she had been staring at earlier seem warm. Colder than they had been before Shadar Logoth. Harder, too, unfortunately. They also looked . . . weary.
“Algarin had a brother who could channel,” he said, turning toward a facing chair. Halfway into the turn, he staggered. He caught himself on an arm of the chair with a barked laugh, pretending he had tripped over his own boots, but there had been no tripping. And he had not seized saidin—she had seen him stagger, doing that—or her ornaments would have warned her. Corele said he only needed a little more sleep to recover from Shadar Logoth. Light, she needed to keep the boy alive, or it had all been for nothing!
“I know,” she said. And since it seemed Algarin might have told him everything, she added, “I was the one who captured Emarin and took him to Tar Valon.” A strange thing for Algarin to be grateful for, in some eyes, but his younger brother survived being gentled for more than ten years after she had helped him reconcile to it. The brothers had been close.
The boy’s eyebrows twitched as he settled into his chair. He had not known. “Algarin wants to be tested,” he said.
She met his gaze levelly, serenely, and held her tongue. Algarin’s children were married, those who still lived. Maybe he was ready to turn this piece of land over to his descendants. In any case, one man more or less who could channel hardly made any difference at this point. Unless it was the boy who was staring at her.
After a moment, his chin moved, the vestige of a nod. Had he been testing her?  Most people remembered after one meeting that she had a sharp tongue. This young man required reminding from time to time. He grunted. It might have been a laugh. It might have been rueful. She reminded herself that he wanted her to teach him something, though he did not seem to know what. No matter. She had a list to choose from, and she had only begun on it.
His face might have been carved from stone for all the expression he showed, but he bounded to his feet and began to pace back and forth between the fireplace and the door. His hands were clenched in fists behind his back. “I’ve been talking with Alivia, about the Seanchan,” he said. “They call their army the Ever Victorious Army for a reason. It’s never lost a war. Battles, yes, but never a war. When they lose a battle, they sit down and work out what they did wrong, or what the enemy did right. Then they change what needs changing for them to win.”
“A wise way,” she said when the flow of words paused. Plainly, he expected some comment. “I know men who do the same. Davram Bashere, for one. Gareth Bryne, Rodel Ituralde, Agelmar Jagad. Even Pedron Niall did, when he was alive. All judged great captains.”
“Yes,” he said, still pacing. He did not look at her, perhaps did not see her, but he was listening. It was to be hoped that he actually heard, as well. “Five men, all great captains. The Seanchan all do it. That’s been their way for a thousand years. They change what they have to change, but they don’t give up.”
“Are you considering the possibility they can’t be defeated?” she asked calmly. Calmness always suited until you knew the facts, and usually after, too.
The boy rounded on her, stiff-necked and eyes like ice. “I can defeat them eventually,” he said, struggling to keep his tone civil. That much was to the good. The less often she had to prove that she could and would punish transgressions of her rules, the better. “But—” He cut off with a growl as the sounds of argument in the hallway penetrated the door.
A moment later the door swung open, and Elza backed into the room, still arguing in a loud voice and trying to hold back two other sisters with her spread arms. Erian, her pale face flushed with color, was pushing the other Green ahead of her physically. Sarene, a woman so beautiful she made Erian look almost ordinary, wore a cooler expression, as might be expected from a White, but she was shaking her head in exasperation, and hard enough to make the colorful beads in her thin braids click together. Sarene possessed a temper, though she normally kept it sealed away tightly.
“Bartol and Rashan do be coming,” Erian announced loudly, agitation thickening Illian in her speech. Those were her two Warders, left behind in Cairhien. “I did no send for them, but someone did Travel with them. An hour ago, I felt them suddenly closer, and just now, closer again. They are coming toward us now.”
“My Vitalien, he also is coming closer,” Sarene said. “He will be here in a few hours, I think.”
Elza let her arms drop, though from the stiffness of her back, she was still glaring at the two sisters. “My Fearil will be here shortly as well,” she muttered. He was her only Warder; it was said they were married, and Greens who married seldom took another another Warder at the same time. Cadsuane wondered whether she would have spoken if the others had not.
“I didn’t expect it so soon,” the boy said softly. Softly, but there was steel in his voice. “But I shouldn’t have expected events to wait on me, should I, Cadsuane?”
“Events never wait on anyone,” she said, standing. Erian flinched as if she had just noticed her, though Cadsuane was sure her face was as smooth as the boy’s. And maybe as stony, at that. What had brought those Warders from Cairhien, and who had Traveled with them, might be problems enough to go on with, but she thought she had gotten another answer from the boy, and she was going to have to consider very carefully how to advise him on it. Sometimes, the answers were thornier than the questions.


--- layout: post title: Bacon Sunrise [Image Cache] date: 2009-11-17 23:07:13 -06:00 comments: true categories: posterous_id: 7611961 --- I hope I can have dreams of this image every night.
Over the apple-smoked mountains, the great yolk rose again. And day began anew. [jenntotten via Geekologie]


| Prospective Students Current Students Parents Alumni Faculty & Staff Community |
Please do not bookmark this page. You MUST run the search first or you will get an error!
Fees column displays the Detail Code, the Amount and Fee Type. The item next to the Amount indicates if the fee is Per Credit Hour (C) or a Flat Rate Fee (F).
Shaded courses indicate evening sections beginning at 5PM or later.
Click here to go to OASIS Web Registration.
| Session | College | Department | CRN | Subject CRS# | Section | Title | Credit Hours |
Permit | Status | Seats | Waitlist Seats Available |
Days | Time | Building | Room | Instructor | Campus | Delivery Method | Fees |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Full Term | EN | ESB | 84758 | CAP 4034 | 001 | Computer Animation | 3 | No | Open | 1 | 97 | TR | 12:30pm-01:45pm | ENB | 116 | J. Wang | Tampa | LCSE $41.00(F)<BR>QCLE $15.00(F) | |
| Full Term | EN | ESB | 92506 | CAP 4063 | 001 | Web Apps Design | 3 | No | Closed | 0 | 54 | MW | 09:30am-10:45am | BSN | 2205 | P. Ventura | Tampa | ||
| Full Term | EN | ESB | 81202 | CAP 5400 | 001 | Digital Image Processing Open to all Majors |
3 | No | Closed | 0 | 0 | MW | 12:30pm-01:45pm | NES | 108 | D. Goldgof | Tampa | ||
| Full Term | EN | ESB | 88889 | CAP 5771 | 001 | Data Mining | 3 | No | Closed | 1 | 0 | MW | 11:00am-12:15pm | ISA | 3050 | L. Hall | Tampa | ||
| Full Term | EN | ESB | 93680 | CAP 6940 | 701 | IT Graduate Practicum Email<EMAIL_ADDRESS>for permit. |
3 - 6 | Yes | Open | 4 | 0 | TBA | OFFT | OFF | M. Labrador | Off-campus - Tampa | |||
| Full Term | EN | ESB | 87139 | CDA 3101 | 701 | IT Comp Org Not for CS and CpE majors. |
3 | No | Open | 50 | 0 | TBA | OFFT | OFF | W. Armitage | Off-campus - Tampa | W | ODLU $30.00(C) | |
| Full Term | EN | ESB | 81550 | CDA 3103 | 001 | Computer Organization | 3 | Yes | Open | 10 | 99 | TR | 09:30am-10:45am | BEH | 104 | Y. Zhang | Tampa | ||
| Full Term | EN | ESB | 92356 | CDA 3103 | 002 | Computer Organization | 3 | Yes | Open | 41 | 99 | F | 11:00am-01:45pm | SOC | 150 | Y. Zhang | Tampa | ||
| Full Term | EN | ESB | 80985 | CDA 3201 | 001 | Computer Logic Design | 3 | No | Open | 15 | 99 | TR | 12:30pm-01:45pm | CHE | 111 | R. Kasturi | Tampa | ||
| Full Term | EN | ESB | 80986 | CDA 3201L | 001 | Computer Logic Design Lab | 1 | No | Open | 6 | 0 | M | 03:30pm-05:20pm | ENB | 214 | R. Kasturi | Tampa | QCSE $79.00(F) | |
| Full Term | EN | ESB | 83778 | CDA 3201L | 002 | Computer Logic Design Lab | 1 | No | Open | 4 | 0 | F | 02:00pm-03:50pm | ENB | 214 | R. Kasturi | Tampa | QCSE $79.00(F) | |
| Full Term | EN | ESB | 80987 | CDA 3201L | 003 | Computer Logic Design Lab | 1 | No | Open | 3 | 0 | T | 03:30pm-05:20pm | ENB | 214 | R. Kasturi | Tampa | QCSE $79.00(F) | |
| Full Term | EN | ESB | 94092 | CDA 3201L | 004 | Computer Logic Design Lab | 1 | No | Open | 3 | 0 | W | 03:30pm-05:20pm | ENB | 214 | R. Kasturi | Tampa | QCSE $79.00(F) | |
| Full Term | EN | ESB | 94093 | CDA 3201L | 005 | Computer Logic Design Lab | 1 | No | Open | 4 | 0 | R | 03:30pm-05:20pm | ENB | 214 | R. Kasturi | Tampa | QCSE $79.00(F) | |
| Full Term | EN | ESB | 80988 | CDA 4205 | 001 | Computer Architecture | 3 | No | Open | 36 | 99 | TR | 08:00am-09:15am | CMC | 141 | F. Amsaad | Tampa | ||
| Full Term | EN | ESB | 83044 | CDA 4213 | 001 | CMOS-VLSI Cross-listed with CIS 6930-012. |
3 | No | Open | 1 | 99 | TR | 11:00am-12:15pm | BSN | 1201 | F. Amsaad | Tampa | ||
| Full Term | EN | ESB | 85458 | CDA 4213L | 001 | CMOS-VLSI Lab | 1 | No | Closed | 0 | 0 | W | 11:00am-12:50pm | ENB | 214 | F. Amsaad | Tampa | LCSE $36.00(F) | |
| Full Term | EN | ESB | 87228 | CDA 4213L | 003 | CMOS-VLSI Lab | 1 | No | Open | 5 | 0 | F | 11:00am-12:50pm | ENB | 214 | F. Amsaad | Tampa | LCSE $36.00(F) | |
| Full Term | EN | ESB | 88640 | CDA 4621 | 001 | Control of Mobile Robots | 3 | No | Closed | 0 | 40 | MW | 03:30pm-04:45pm | EDU | 261 | A. Weitzenfeld | Tampa | QCSE $25.00(F) | |
| Full Term | EN | ESB | 90690 | CDA 5416 | 001 | Intro to Comp-Aid Verification | 3 | No | Open | 2 | 0 | MW | 09:30am-10:45am | SOC | 160 | H. Zheng | Tampa | ||
| Full Term | EN | ESB | 85825 | CEN 3722 | 701 | Human Computer Interface Not for CS and CpE majors. Cross-listed with CIS 6930-702. |
3 | No | Open | 52 | 0 | TBA | OFFT | OFF | I. Hidalgo | Off-campus - Tampa | W | ODLU $30.00(C) | |
| Full Term | EN | ESB | 85826 | CEN 4031 | 701 | IT Software Engineering Not for Cs and CpE majors. |
3 | No | Open | 83 | 0 | TBA | OFFT | OFF | A. Qureshi | Off-campus - Tampa | W | ODLU $30.00(C) | |
| Full Term | EN | ESB | 87209 | CEN 4072 | 901 | Software Testing | 3 | No | Open | 1 | 96 | TR | 05:00pm-06:15pm | CIS | 1016 | L. Piegl | Tampa | ||
| Full Term | EN | ESB | 94292 | CEN 6084 | 001 | Advances in Object Oriented Pr Not for CS and CpE majors. |
3 | No | Open | 36 | 0 | MW | 09:30am-10:45am | CPR | 122 | A. Gaspar | Tampa | ||
| Full Term | EN | ESB | 94293 | CEN 6084 | 701 | Advances in Object Oriented Pr Not for CS and CpE majors. |
3 | No | Open | 93 | 0 | TBA | OFFT | OFF | A. Gaspar | Off-campus - Tampa | W | ODLG $30.00(C) |
Fall 2016 Classes: August 22, 2016 through December 2, 2016
Spring 2017 Classes: January 9, 2017 through May 4, 2017
Summer 2017 Classes: May 15, 2017 through August 4, 2017
Office of the Registrar - AskTheRegistrar@admin.usf.edu


Toggle navigation
Bikes Aggregation-DECIMUS+
About Us
Get Finance
Contact
Brand
Model
Price
Rating
Specifications
Image source
Enter Comments


Olga Agafonova built the Inhale app as a Free app. This SERVICE is provided by Olga Agafonova at no cost and is intended for use as is.
This page is used to inform visitors regarding my policies with the collection, use, and disclosure of Personal Information if anyone decided to use my Service.
If you choose to use my Service, then you agree to the collection and use of information in relation to this policy. The Personal Information that I collect is used for providing and improving the Service. I will not use or share your information with anyone except as described in this Privacy Policy.
The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which is accessible at Inhale unless otherwise defined in this Privacy Policy.
Information Collection and Use
For a better experience, while using our Service, I may require you to provide us with certain personally identifiable information, including but not limited to Firebase ID. The information that I request will be retained on your device and is not collected by me in any way.
The app does use third party services that may collect information used to identify you.
Link to privacy policy of third party service providers used by the app: Google Play Services.
Log Data
I want to inform you that whenever you use my Service, in a case of an error in the app I collect data and information (through third party products) on your phone called Log Data. This Log Data may include information such as your device Internet Protocol (“IP”) address, device name, operating system version, the configuration of the app when utilizing my Service, the time and date of your use of the Service, and other statistics.
Cookies
Cookies are files with a small amount of data that are commonly used as anonymous unique identifiers. These are sent to your browser from the websites that you visit and are stored on your device's internal memory.
This Service does not use these “cookies” explicitly. However, the app may use third party code and libraries that use “cookies” to collect information and improve their services. You have the option to either accept or refuse these cookies and know when a cookie is being sent to your device. If you choose to refuse our cookies, you may not be able to use some portions of this Service.
Service Providers
I may employ third-party companies and individuals due to the following reasons:
I want to inform users of this Service that these third parties have access to your Personal Information. The reason is to perform the tasks assigned to them on our behalf. However, they are obligated not to disclose or use the information for any other purpose.
Security
I value your trust in providing us your Personal Information, thus we are striving to use commercially acceptable means of protecting it. But remember that no method of transmission over the internet, or method of electronic storage is 100% secure and reliable, and I cannot guarantee its absolute security.
Links to Other Sites
This Service may contain links to other sites. If you click on a third-party link, you will be directed to that site. Note that these external sites are not operated by me. Therefore, I strongly advise you to review the Privacy Policy of these websites. I have no control over and assume no responsibility for the content, privacy policies, or practices of any third-party sites or services.
Children’s Privacy
These Services do not address anyone under the age of 13. I do not knowingly collect personally identifiable information from children under 13. In the case I discover that a child under 13 has provided me with personal information, I immediately delete this from our servers.
Changes to This Privacy Policy
I may update our Privacy Policy from time to time. Thus, you are advised to review this page periodically for any changes. I will notify you of any changes by posting the new Privacy Policy on this page. These changes are effective immediately after they are posted on this page.
Contact Us
If you have any questions or suggestions about my Privacy Policy, do not hesitate to contact me.


---
layout: post
title: decent graphs with graphviz
date: '2006-04-07T15:25:00.000+02:00'
author: Steven Van Acker
tags:
modified_time: '2008-01-16T09:39:12.143+01:00'
blogger_id: tag:blogger.com,1999:blog-5513234137363262204.post-8786316989341562788
blogger_orig_url: http://www.singularity.be/2006/04/decent-graphs-with-graphviz.html
---
I've been using graphviz to draw graphs, but my images always suck.
I use the default boxes and ellipses to represent nodes. Today I looked for a way to include custom shapes into graphviz, and I discovered the "shapefile" attribute.
I could get it to work for EPS files, but not for PNG.
This site has a working example to include custom PNG shapes into a graphviz graph.
Now that I know how it works, I can start making some decent networkgraphs


layout: single
title: "Technical debt and VAN"
date: 2016-06-19 16:19:48 +0100
lang: es
categories: pmp
---
Last statistics show us that the software's average lifetime is around 10 years. Does it mean that software is like a engine of an old car? Is there a moment when you can not fix it more and the best way is to buy a new one?
Well, there are many elements but this entry is about the Technical Debt and how you can manage it as a Project Manager.
{% include toc %}
Let's assume that you are a PM in a long time project (4 or 5 years). Obviously, you will need a initial investment and some financing during the project. The investors will ask whether that project is a good investment, how much and when will be ROI. I mean, they need to know the project's VAT.
In software development world, we usually estimate the cost of each new feature, trying to know what will be the cost associated it. However, do we actually implement what we have estimated before?. No, we don't. Normally new issues arise, the complexity is increased o requirements does not match with the client's needed.
Let's come back to our financial example: each un-planned change in the project is like a request for funding. It means that we do not have enough cash and we need to use external financial services. As you know, this loan is not free. No administrator would think to request a loan if the interest rate is unknown. If someone would do that we could think that he/she is incompetent. Well, this situation occurs everyday in software development.
Basically, technical debt is everything that allows us to be flexible meanwhile we are development, to manage changes in our project but we know that we will need to fix it on the future. In example, this happens when we discover new requirements which affect the software architecture, or when we need to use a workaround to fix something quickly.
When we have found new requirements, it is similar to request a loan, and the final technical debt interests will be increased. We usually try to add those new requirements with no modifications into our base primary lines (time, cost, or scope). If our contingency reserve is empty, and our quality base line absorbs the impact, this is also part of the technical debt. For instance, if we reduce the amount of test then we increase the probability of errors, especially expensive on production time.
When we make a quick workaround, we could likely avoid a delay on the deployment but we are also increasing our technical debt. That means that we have reduced the time to market but we have left pending a future fix. If these workaround is isolated, it won't probably affect us. However components are usually interconnected, and that pending change will increase the development time of new features on the future.
A good approach is to group related technical debts and fix them together (like multiple loan example): It is called re-factoring.
Refactoring can be classified as:
Pro-active Refactoring. It the best one because is optional (at the moment) and it allows us to plan when and how achieve it (or still leave it until later). Other big advantage is that it gives us information about the team status. Whether we have a lot of change requests coming from the team (pro-activity) that means that the team engagement is high. Otherwise we likely invest some resources to get that engagement. A demotivated team is the worst thing into a project.
Mandatory Refactoring. We have no alternative and we have to pay right now to get the new feature. In our financial example, it means that we have been into a court process and we have lost it. In this case, we have lost the flexibility.
In the same way that each administrator keeps under control the financial aspect, we also have to manage our technical debt. Our suggestion is to manage each technical debt as a new risk and link it to a module. Like other risk, we have to calculate the probability and the impact (using the relation index of that module). The estimation cost should be proportionate by the technical team.
After that initial classification, we need to evaluate the technical debt over-cost. We use the VAT concept but instead of time we will use the amount of interconnected modules. It means that a debt affects 5 first components should be more expensive that one only affects a module used by just one client.
As risk management, we have got a Probability and Impact Matrix. However, the impact concept is replaced by the number of related modules that could be affected by this debt. Probability should be calculate for each software deployment. It means that if the next deploy has no modules affected by the specific debt, then its probability is less than 0.1.
This matrix allows us to prioritise the payment of our technical debt along development iterations and get better contingency reserve.
| Probability (Iteration) |
Technical Debt Threat | ||||
|---|---|---|---|---|---|
| 0.90 | 0.05 | 0.09 | 0.18 | 0.36 | 0.72 |
| 0.70 | 0.04 | 0.07 | 0.14 | 0.28 | 0.56 |
| 0.50 | 0.03 | 0.05 | 0.10 | 0.20 | 0.40 |
| 0.30 | 0.02 | 0.03 | 0.06 | 0.12 | 0.24 |
| 0.10 | 0.01 | 0.01 | 0.02 | 0.04 | 0.08 |
| 0.05 Very Low |
0.10 Low |
0.20 Moderate |
0.40 High |
0.80 Very Hight |
An template
| Technical debt ID | rtd-001 | Iteration | 2 | ||||||||
|
|||||||||||
| Affected Modules Count | 3 | ||||||||||
| Estimation | 45 h | ||||||||||
|
|||||||||||
|
[VAT]
There is only one error that we
Pensar que esa pequeña deuda no afectara es el único error que no podemos permitirnos como PMP. Podemos mantener los riesgos bajo control con las plantillas, pero esto exige que el proyecto esté perfectamente dividio en paquetes funcionales y un trabajo bastante cercano con el equipo arquitectónico de software y, por supuesto, muy alineado con el portfolio de la empresa.
Otra opción, mucho más sencilla, aunque menos flexible, es reservar un ancho de banda entre cada iteración para resolver todos esos problemas o cambios en el diseño. Siempre al principio de la nueva iteración y limitados en el tiempo, para afectar lo mínimo posible la entraga de las nuevas funcionalidades.
En este negocio, cada cierto tiempo, surgen nuevos hyppes a los que todo el mundo parece venir bien. Esas nuevas tendencias suelen presentarse como una bala de plata: resuleven todos los problemas, son muy fáciles de usar y todo el mundo está feliz con los resultados. Algunos de estos últimos hyppes son el Agile (ver Agile está muerto) o el omnipresente Big Data donde sólo el 27% de los ejecutivos describen sus iniciativas en Big Data como existosas).
La gran ventaja de estos hypes es que los proyectos que los usan no sufren apenas deuda técnica. Sin embargo, a lo largo del tiempo y su evolución, el peso de esa deuda se va incrementando. Existen incluso casos donde se vuelve imposible la continuidad del desarrollo.
He tenido la suerte de trabajar en bastantes projectos de larga duración (más de 10 años de desarrollo cuando me incorporé a ellos), y por supuesto con una gran deuda técnica heredada. El gran problema es que esa deuda no es visible a la capa de gestión hasta que no llega a niveles muy alarmantes. Es imposible pretender tener equipos de alto rendimiento(equipos Agile) cuando estos gastan más del 40% de su tiempo de desarrollo en lidiar con esa deuda. ¿Cómo le dices a tus stackeholders que el producto es un 40% más caro o que la velocidad del equipo es de sólo el 60%? y además, si no actuamos ya, el año que viene puede que se incrmente hasta un 42%. Esto acaba con la desmotivación de los equipos, el incremento del time to market, y como resultado la perdida de competencia y de negocio.
Es comprensible pensar que en un proyecto que lleva años de desarrollo y evolución, el coste de evaluar esa deuda técnica, puede ser notable. Pero veámoslo desde el punto de vista financiero, ¿alguien se atrevería a comprar una casa y empezar a hacer reformas sin comprobar previamente si tiene cargas previas? Muchas veces, portar la idea del mundo abstracto del software a un ejemplo más habitual, puede ayudar a hacer comprender a los stackeholders de la necesidad de este proceso.


|
|---|
| In those days the multitude being very great, and having nothing to eat, Jesus called his disciples unto him, and saith unto them,
|
|---|
| ᎾᎯᏳᏃ ᎤᏂᏣᏘ ᎨᏒ ᏴᏫ ᏧᏈᏯ ᎨᏒ ᎢᏳᏍᏗ, ᎠᎴ ᏄᏂᎲᎾ ᎨᏒ ᎤᎾᎵᏍᏓᏴᏗ, ᏥᏌ ᏫᏚᏯᏅᎲ ᎬᏩᏍᏓᏩᏗᏙᎯ, ᎯᎠ ᏂᏚᏪᏎᎴᎢ;
|
|---|
Na-hi-yu-no u-ni-tsa-ti ge-sv yv-wi tsu-qui-ya ge-sv i-yu-s-di, a-le nu-ni-hv-na ge-sv u-na-li-s-da-yv-di, Tsi-sa wi-du-ya-nv-hv gv-wa-s-da-wa-di-do-hi, hi-a ni-du-we-se-le-i;
|
|---|
|
|---|
| I have compassion on the multitude, because they have now been with me three days, and have nothing to eat:
|
|---|
| ᎦᏥᏯᏙᎵᎦ ᎤᏂᏣᏘ ᎨᏒᎢ, ᏅᏗᎦᎵᏍᏙᏗ ᎿᎭᏉ ᏦᎢ ᎢᎦ ᎢᏧᎳᎭ ᎣᎨᏙᎸᎢ ᎠᎴ ᏄᏂᎲᎾ ᎨᏒ ᎤᎾᎵᏍᏓᏴᏗ;
|
|---|
Ga-tsi-ya-do-li-ga u-ni-tsa-ti ge-sv-i, nv-di-ga-li-s-do-di hna-quo tso-i i-ga i-tsu-la-ha o-ge-do-lv-i a-le nu-ni-hv-na ge-sv u-na-li-s-da-yv-di;
|
|---|
|
|---|
| And if I send them away fasting to their own houses, they will faint by the way: for divers of them came from far.
|
|---|
| ᎢᏳᏃ ᏱᎦᏥᏯᏂᎩᏍᏗᎭ ᏙᏧᏁᏅᏒ ᏯᏁᎦ ᏄᎾᎵᏍᏓᏴᏅᎾ, ᏩᎾᎢᏒᏉ ᏱᏓᏂᏩᎾᎦᎶᎩ; ᎢᎦᏛᏰᏃ ᎢᏅᎯᏳ ᏙᏧᏁᏅ.
|
|---|
I-yu-no yi-ga-tsi-ya-ni-gi-s-di-ha do-tsu-ne-nv-sv ya-ne-ga nu-na-li-s-da-yv-nv-na, wa-na-i-sv-quo yi-da-ni-wa-na-ga-lo-gi; i-ga-dv-ye-no i-nv-hi-yu do-tsu-ne-nv.
|
|---|
|
|---|
| And his disciples answered him, From whence can a man satisfy these men with bread here in the wilderness?
|
|---|
| ᎬᏩᏍᏓᏩᏗᏙᎯᏃ ᎯᎠ ᏂᎬᏩᏪᏎᎴᎢ, ᎭᏢ ᏱᏓᎩ ᎩᎶ ᎾᏍᎩ ᎢᎦᎢ ᎦᏚ ᎠᏂ ᎢᎾᎨᎢ, ᎯᎠ ᎾᏍᎩ ᏰᎵ ᎬᏩᏂᏛᏓᏁᏗ.
|
|---|
Gv-wa-s-da-wa-di-do-hi-no hi-a ni-gv-wa-we-se-le-i, Ha-tlv yi-da-gi gi-lo na-s-gi i-ga-i ga-du a-ni i-na-ge-i, hi-a na-s-gi ye-li gv-wa-ni-dv-da-ne-di.
|
|---|
|
|---|
| And he asked them, How many loaves have ye? And they said, Seven.
|
|---|
| ᏚᏛᏛᏁᏃ ᎯᎠ ᏄᏪᏎᎢ; ᎢᎳᎪ ᎦᏚ ᏕᏥᏰᎭ? ᎯᎠᏃ ᏄᏂᏪᏎᎢ, ᎦᎵᏉᎩ.
|
|---|
Du-dv-dv-ne-no hi-a nu-we-se-i; I-la-go ga-du de-tsi-ye-ha? Hi-a-no nu-ni-we-se-i, Ga-li-quo-gi.
|
|---|
|
|---|
| And he commanded the people to sit down on the ground: and he took the seven loaves, and gave thanks, and brake, and gave to his disciples to set before them; and they did set them before the people.
|
|---|
| ᏚᏁᏤᎴᏃ ᎤᏂᏣᏘ ᎦᏙᎯ ᎤᎾᏂᏢᏗᏱ; ᎦᎵᏉᎩᏃ ᎦᏚ ᏚᎩᏒ, ᎠᎴ ᎤᎵᎮᎵᏨ, ᏚᎬᎭᎷᏰᎢ, ᎠᎴ ᎬᏩᏍᏓᏩᏗᏙᎯ ᏚᏁᎴ ᎾᏍᎩ ᎢᎬᏱᏗᏢ ᏧᏂᏁᏗᏱ; ᎢᎬᏱᏗᏢᏃ ᏚᏂᏁᎴ ᎤᏂᏣᏘ ᏴᏫ.
|
|---|
Du-ne-tse-le-no u-ni-tsa-ti ga-do-hi u-na-ni-tlv-di-yi; ga-li-quo-gi-no ga-du du-gi-sv, a-le u-li-he-li-tsv, du-gv-ha-lu-ye-i, a-le gv-wa-s-da-wa-di-do-hi du-ne-le na-s-gi i-gv-yi-di-tlv tsu-ni-ne-di-yi; i-gv-yi-di-tlv-no du-ni-ne-le u-ni-tsa-ti yv-wi.
|
|---|
|
|---|
| And they had a few small fishes: and he blessed, and commanded to set them also before them.
|
|---|
| ᎠᎴ ᎢᎸᏍᎩ ᏧᎾᏍᏗ ᎠᏣᏗ ᏓᏂᏁᎮᎢ, ᎤᎵᎮᎵᏨᏃ ᎤᏁᏤ ᎾᏍᎩ ᎾᏍᏉ ᎢᎬᏱᏗᏢ ᏧᏂᏅᏗᏱ.
|
|---|
A-le i-lv-s-gi tsu-na-s-di a-tsa-di da-ni-ne-he-i, u-li-he-li-tsv-no u-ne-tse na-s-gi na-s-quo i-gv-yi-di-tlv tsu-ni-nv-di-yi.
|
|---|
|
|---|
| So they did eat, and were filled: and they took up of the broken meat that was left seven baskets.
|
|---|
| ᎤᎾᎵᏍᏓᏴᏁᏃ, ᎠᎴ ᏚᏃᎸᏎᎢ; ᎤᏄᏖᏎᏃ ᎤᎵᎬᎭᎷᏴᎯ ᎤᏘᏴᎯ ᎦᎵᏉᎩ ᎢᏯᎧᎵᎢ ᏔᎷᏣ.
|
|---|
U-na-li-s-da-yv-ne-no, a-le du-no-lv-se-i; u-nu-te-se-no u-li-gv-ha-lu-yv-hi u-ti-yv-hi ga-li-quo-gi i-ya-ka-li-i ta-lu-tsa.
|
|---|
|
|---|
| And they that had eaten were about four thousand: and he sent them away.
|
|---|
| ᎤᎾᎵᏍᏓᏴᏅᎯᏃ ᏅᎩ ᎢᏯᎦᏴᎵ ᎢᏴᏛ ᎾᏂᎡᎢ; ᏚᏰᎵᎯᏍᏔᏁᏃ.
|
|---|
U-na-li-s-da-yv-nv-hi-no nv-gi i-ya-ga-yv-li i-yv-dv na-ni-e-i; du-ye-li-hi-s-ta-ne-no.
|
|---|
|
|---|
| And straightway he entered into a ship with his disciples, and came into the parts of Dalmanutha.
|
|---|
| ᎢᎬᏪᏅᏛᏃ ᏥᏳᎯ ᎤᏣᏁ ᎠᏁᎮ ᎬᏩᏍᏓᏩᏗᏙᎯ, ᎠᎴ ᏓᎵᎻᏄᏓ ᎠᏍᏛ ᏭᎷᏤᎢ.
|
|---|
I-gv-we-nv-dv-no tsi-yu-hi u-tsa-ne a-ne-he gv-wa-s-da-wa-di-do-hi, a-le Da-li-mi-nu-da a-s-dv wu-lu-tse-i.
|
|---|
|
|---|
| And the Pharisees came forth, and began to question with him, seeking of him a sign from heaven, tempting him.
|
|---|
| ᎠᏂᏆᎵᏏᏃ ᎤᏂᎷᏤ ᎠᎴ ᎤᎾᎴᏅᎮ ᎬᏩᏛᏛᎮᎸᏁᎢ, ᎬᏩᏔᏲᏎᎴ ᏧᎾᏄᎪᏫᏎᏗᏱ ᎤᏰᎸᏛ ᎦᎸᎳᏗ ᏅᏓᏳᎶᏒᎯ, ᎬᏩᎪᎵᏰᏍᎨᎢ.
|
|---|
A-ni-qua-li-si-no u-ni-lu-tse a-le u-na-le-nv-he gv-wa-dv-dv-he-lv-ne-i, gv-wa-ta-yo-se-le tsu-na-nu-go-wi-se-di-yi u-ye-lv-dv ga-lv-la-di nv-da-yu-lo-sv-hi, gv-wa-go-li-ye-s-ge-i.
|
|---|
|
|---|
| And he sighed deeply in his spirit, and saith, Why doth this generation seek after a sign? verily I say unto you, There shall no sign be given unto this generation.
|
|---|
| ᎤᏓᏅᏙᎩᎯᏃ ᎭᏫᏂ ᎤᎵᏰᏔᏁᎢ, ᎠᎴ ᎯᎠ ᏄᏪᏎᎢ, ᎦᏙᏃ ᎪᎯ ᎯᎠ ᏣᏁᎭ ᎤᏰᎸᏛ ᎤᏂᏲᎭ? ᎤᏙᎯᏳᎯᏯ ᎯᎠ ᏂᏨᏪᏎᎭ, ᎥᏝ ᎬᏂᎨᏒ ᎢᎨᎬᏁᏗ ᏱᎨᏎᏍᏗ ᎤᏰᎸᏛ ᎯᎠ ᎪᎯ ᏣᏁᎭ.
|
|---|
U-da-nv-do-gi-hi-no ha-wi-ni u-li-ye-ta-ne-i, a-le hi-a nu-we-se-i, Ga-do-no go-hi hi-a tsa-ne-ha u-ye-lv-dv u-ni-yo-ha? u-do-hi-yu-hi-ya hi-a ni-tsv-we-se-ha, v-tla gv-ni-ge-sv i-ge-gv-ne-di yi-ge-se-s-di u-ye-lv-dv hi-a go-hi tsa-ne-ha.
|
|---|
|
|---|
| And he left them, and entering into the ship again departed to the other side.
|
|---|
| ᏚᏓᏅᎡᎸᏃ, ᎠᎴ ᏔᎵᏁ ᏥᏳᎯ ᎤᏣᏅ, ᎠᏍᎪᎾ ᏭᎶᏎᎢ.
|
|---|
Du-da-nv-e-lv-no, a-le ta-li-ne tsi-yu-hi u-tsa-nv, a-s-go-na wu-lo-se-i.
|
|---|
|
|---|
| Now the disciples had forgotten to take bread, neither had they in the ship with them more than one loaf.
|
|---|
| [ᎬᏩᏍᏓᏩᏗᏙᎯᏃ] ᎤᏅᎨᏫᏒᎯ ᎨᏎ ᎦᏚ ᏧᎾᏕᏅᏗᏱ, ᎥᏝ ᎠᎴ ᏳᎶᏒᏍᏕ ᏌᏉ ᎦᏚ ᎤᏂᎸ ᏥᏳᎯ.
|
|---|
[Gv-wa-s-da-wa-di-do-hi-no] u-nv-ge-wi-sv-hi ge-se ga-du tsu-na-de-nv-di-yi, v-tla a-le yu-lo-sv-s-de sa-quo ga-du u-ni-lv tsi-yu-hi.
|
|---|
|
|---|
| And he charged them, saying, Take heed, beware of the leaven of the Pharisees, and of the leaven of Herod.
|
|---|
| ᏚᏁᏤᎴᏃ ᎯᎠ ᏄᏪᏎᎢ, ᎢᏥᏯᏫᏍᎨᏍᏗ, ᎠᏂᏆᎵᏏ ᎤᎾᏤᎵ ᎠᎪᏙᏗ ᎢᏤᏯᏙᏤᎮᏍᏗ, ᎠᎴ ᎡᎶᏗ ᎤᏤᎵ ᎠᎪᏙᏗ.
|
|---|
Du-ne-tse-le-no hi-a nu-we-se-i, I-tsi-ya-wi-s-ge-s-di, A-ni-qua-li-si u-na-tse-li a-go-do-di i-tse-ya-do-tse-he-s-di, a-le e-lo-di u-tse-li a-go-do-di.
|
|---|
|
|---|
| And they reasoned among themselves, saying, It is because we have no bread.
|
|---|
| ᎤᏅᏒᏃ ᎨᏒ ᎤᎾᎵᏃᎮᎴ, ᎯᎠ ᏄᏂᏪᏎᎢ, ᏅᏗᎦᎵᏍᏙᏗᎭ ᎦᏚ ᏂᏗᏗᏰᎲᎾ ᎨᏒᎢ.
|
|---|
U-nv-sv-no ge-sv u-na-li-no-he-le, hi-a nu-ni-we-se-i, Nv-di-ga-li-s-do-di-ha ga-du ni-di-di-ye-hv-na ge-sv-i.
|
|---|
|
|---|
| And when Jesus knew it, he saith unto them, Why reason ye, because ye have no bread? perceive ye not yet, neither understand? have ye your heart yet hardened?
|
|---|
| ᏥᏌᏃ ᎤᏙᎴᎰᏒ ᎯᎠ ᏂᏚᏪᏎᎴᎢ, ᎦᏙᏃ ᎢᏣᎵᏃᎮᎭ ᎦᏚ ᏂᏗᏥᏰᎲᎾ ᎨᏒ ᎢᏳᏍᏗ? ᎠᏏᏉᏍᎪ ᏂᏣᏙᎴᎰᏍᎬᎾ ᎢᎩ, ᎠᎴ ᏂᏦᎵᎬᎾ ᎢᎩ? ᎠᏏᏉᏍᎪ ᎠᏍᏓᏯ ᏂᏕᏨᏅ ᏗᏥᎾᏫ?
|
|---|
Tsi-sa-no u-do-le-ho-sv hi-a ni-du-we-se-le-i, Ga-do-no i-tsa-li-no-he-ha ga-du ni-di-tsi-ye-hv-na ge-sv i-yu-s-di? A-si-quo-s-go ni-tsa-do-le-ho-s-gv-na i-gi, a-le ni-tso-li-gv-na i-gi? A-si-quo-s-go a-s-da-ya ni-de-tsv-nv di-tsi-na-wi?
|
|---|
|
|---|
| Having eyes, see ye not? and having ears, hear ye not? and do ye not remember?
|
|---|
| ᏕᏥᎧᏅᏍᎪ, ᏂᏥᎪᏩᏘᏍᎬᎾᏃ ᎢᎩ? ᏕᏥᎵᎷᎦᏍᎪ, ᏂᏣᏛᎩᏍᎬᎾᏃ ᎢᎩ? ᎠᎴ ᏂᏣᏅᏓᏗᏍᎬᎾᏍᎪ ᎢᎩ?
|
|---|
De-tsi-ka-nv-s-go, ni-tsi-go-wa-ti-s-gv-na-no i-gi? De-tsi-li-lu-ga-s-go, ni-tsa-dv-gi-s-gv-na-no i-gi? A-le ni-tsa-nv-da-di-s-gv-na-s-go i-gi?
|
|---|
|
|---|
| When I brake the five loaves among five thousand, how many baskets full of fragments took ye up? They say unto him, Twelve.
|
|---|
| ᎯᏍᎩ ᎦᏚ ᏓᎩᎬᎭᎷᏴ ᎯᏍᎩ ᎢᏯᎦᏴᎵ ᏕᏥᏁᎸ, ᎢᎳᎪ ᎢᏯᎧᎵᎢ ᏔᎷᏣ ᎤᎵᎬᎭᎷᏴᎯ ᎢᏧᏖᏎᎢ? ᏔᎳᏚ ᎢᎬᏬᏎᎴᎢ.
|
|---|
Hi-s-gi ga-du da-gi-gv-ha-lu-yv hi-s-gi i-ya-ga-yv-li de-tsi-ne-lv, i-la-go i-ya-ka-li-i ta-lu-tsa u-li-gv-ha-lu-yv-hi i-tsu-te-se-i? Ta-la-du i-gv-wo-se-le-i.
|
|---|
|
|---|
| And when the seven among four thousand, how many baskets full of fragments took ye up? And they said, Seven.
|
|---|
| ᎦᎵᏉᎩᏃ [ᎦᏚ] ᏅᎩ ᎢᏯᎦᏴᎵ ᏕᏥᏁᎸ, ᎢᎳᎪ ᎢᏯᎧᎵᎢ ᏔᎷᏣ ᎤᎵᎬᎭᎷᏴᎯ ᎢᏧᏖᏎᎢ? ᎦᎵᏉᎩ ᎤᎾᏛᏁᎢ.
|
|---|
Ga-li-quo-gi-no [ga-du] nv-gi i-ya-ga-yv-li de-tsi-ne-lv, i-la-go i-ya-ka-li-i ta-lu-tsa u-li-gv-ha-lu-yv-hi i-tsu-te-se-i? Ga-li-quo-gi u-na-dv-ne-i.
|
|---|
|
|---|
| And he said unto them, How is it that ye do not understand?
|
|---|
| ᎯᎠᏃ ᏂᏚᏪᏎᎴᎢ, ᎦᏙ ᎦᎵᏍᏙᏗᎭ ᏂᏦᎵᎬᎾ ᏥᎩ?
|
|---|
Hi-a-no ni-du-we-se-le-i, Ga-do ga-li-s-do-di-ha ni-tso-li-gv-na tsi-gi?
|
|---|
|
|---|
| And he cometh to Bethsaida; and they bring a blind man unto him, and besought him to touch him.
|
|---|
| ᏇᏣᏱᏗᏃ ᏭᎷᏤᎢ; ᏗᎨᏫᏃ ᎠᏍᎦᏯ ᎬᏩᏘᏃᎮᎴᎢ, ᎠᎴ ᎤᏂᏔᏲᏎᎴ ᎾᏍᎩ ᎤᏒᏂᏍᏗᏱ.
|
|---|
Que-tsa-yi-di-no wu-lu-tse-i; di-ge-wi-no a-s-ga-ya gv-wa-ti-no-he-le-i, a-le u-ni-ta-yo-se-le na-s-gi u-sv-ni-s-di-yi.
|
|---|
|
|---|
| And he took the blind man by the hand, and led him out of the town; and when he had spit on his eyes, and put his hands upon him, he asked him if he saw ought.
|
|---|
| ᏗᎨᏫᏃ ᎤᏬᏯᏁᏒ, ᎦᏚᎲ ᎤᏄᎪᏫᏎᎢ; ᏗᎦᏙᎵᏃ ᏚᎵᏥᏍᏋ, ᎠᎴ ᏚᏏᏔᏛ, ᎪᎱᏍᏗᏍᎪ ᎯᎪᏩᏛᏗᎭ? ᎤᏬᏎᎴᎢ.
|
|---|
Di-ge-wi-no u-wo-ya-ne-sv, ga-du-hv u-nu-go-wi-se-i; di-ga-do-li-no du-li-tsi-s-quv, a-le du-si-ta-dv, go-hu-s-di-s-go hi-go-wa-dv-di-ha? U-wo-se-le-i.
|
|---|
|
|---|
| And he looked up, and said, I see men as trees, walking.
|
|---|
| ᏚᎧᎿᎭᏅᏃ, ᎯᎠ ᏄᏪᏎᎢ, ᏴᏫ ᎦᏥᎪᏩᏘᎭ ᎠᏁᎩᎭ ᏕᏡᎬ ᎾᏍᎩᏯᎢ.
|
|---|
Du-ka-hna-nv-no, hi-a nu-we-se-i, Yv-wi ga-tsi-go-wa-ti-ha a-ne-gi-ha de-tlu-gv na-s-gi-ya-i.
|
|---|
|
|---|
| After that he put his hands again upon his eyes, and made him look up: and he was restored, and saw every man clearly.
|
|---|
| ᎿᎭᏉᏃ ᏔᎵᏁ ᏗᎦᏙᎵ ᏚᏏᏔᏕᎢ, ᎠᎴ ᏧᎧᏃᏗᏱ ᏄᏩᏁᎴᎢ; ᎠᎴ ᎤᏗᏩᏎᎢ, ᎠᎴ ᎾᏂᎥ ᎣᏏᏳ ᏓᎪᏩᏗᏍᎨᎢ.
|
|---|
Hna-quo-no ta-li-ne di-ga-do-li du-si-ta-de-i, a-le tsu-ka-no-di-yi nu-wa-ne-le-i; a-le u-di-wa-se-i, a-le na-ni-v o-si-yu da-go-wa-di-s-ge-i.
|
|---|
|
|---|
| And he sent him away to his house, saying, Neither go into the town, nor tell it to any in the town.
|
|---|
| ᎠᎴ ᎤᏁᏤᎴ ᏧᏪᏅᏒ ᏭᎶᎯᏍᏗᏱ, ᎯᎠ ᏄᏪᏎᎢ, ᏞᏍᏗ ᏗᎦᏚᎲ ᏫᏣᏴᎸᎩ, ᎠᎴ ᏞᏍᏗ ᎩᎶ ᎦᏚᎲ ᎡᎯ ᎯᏃᏁᎸᎩ.
|
|---|
A-le u-ne-tse-le tsu-we-nv-sv wu-lo-hi-s-di-yi, hi-a nu-we-se-i, Tle-s-di di-ga-du-hv wi-tsa-yv-lv-gi, a-le tle-s-di gi-lo ga-du-hv e-hi hi-no-ne-lv-gi.
|
|---|
|
|---|
| And Jesus went out, and his disciples, into the towns of Caesarea Philippi: and by the way he asked his disciples, saying unto them, Whom do men say that I am?
|
|---|
| ᏥᏌᏃ ᎤᏄᎪᏤ ᎠᎴ ᎾᏍᎩ ᎬᏩᏍᏓᏩᏗᏙᎯ, ᏏᏌᎵᏱ ᏈᎵᎩ ᏕᎦᏚᎲ ᏭᏂᎶᏎᎢ; ᏩᎾᎢᏒᏃ ᏚᏛᏛᏁ ᎬᏩᏍᏓᏩᏗᏙᎯ, ᎯᎠ ᏂᏚᏪᏎᎴᎢ, ᎦᎪ ᎬᏉᏎᎰ ᏴᏫ?
|
|---|
Tsi-sa-no u-nu-go-tse a-le na-s-gi gv-wa-s-da-wa-di-do-hi, Si-sa-li-yi Qui-li-gi de-ga-du-hv wu-ni-lo-se-i; wa-na-i-sv-no du-dv-dv-ne gv-wa-s-da-wa-di-do-hi, hi-a ni-du-we-se-le-i, Ga-go gv-quo-se-ho yv-wi?
|
|---|
|
|---|
| And they answered, John the Baptist: but some say, Elias; and others, One of the prophets.
|
|---|
| ᎯᎠᏃ ᏄᏂᏪᏎᎢ, ᏣᏂ ᏗᏓᏬᏍᎩ; ᎢᎦᏛᏍᎩᏂ ᎢᎳᏯ [ᎠᎾᏗᎭ;] ᎢᎦᏛᏃ, ᎩᎶ ᎢᏳᏍᏗ ᎠᎾᏙᎴᎰᏍᎩ.
|
|---|
Hi-a-no nu-ni-we-se-i, Tsa-ni Di-da-wo-s-gi; i-ga-dv-s-gi-ni I-la-ya [a-na-di-ha;] i-ga-dv-no, Gi-lo i-yu-s-di a-na-do-le-ho-s-gi.
|
|---|
|
|---|
| And he saith unto them, But whom say ye that I am? And Peter answereth and saith unto him, Thou art the Christ.
|
|---|
| ᎯᎠᏃ ᏂᏚᏪᏎᎴᎢ, ᏂᎯᎾᏃ ᎦᎪ ᏍᎩᏲᏎᎭ? ᏈᏓᏃ ᎤᏁᏨ ᎯᎠ ᏄᏪᏎᎴᎢ, ᎦᎶᏁᏛ ᏂᎯ.
|
|---|
Hi-a-no ni-du-we-se-le-i, Ni-hi-na-no ga-go s-gi-yo-se-ha? Qui-da-no u-ne-tsv hi-a nu-we-se-le-i, Ga-lo-ne-dv ni-hi.
|
|---|
|
|---|
| And he charged them that they should tell no man of him.
|
|---|
| ᏚᏁᏤᎴᏃ ᎾᏍᎩ ᎩᎶ ᎤᏂᏃᏁᏗᏱ ᏂᎨᏒᎾ.
|
|---|
Du-ne-tse-le-no na-s-gi gi-lo u-ni-no-ne-di-yi ni-ge-sv-na.
|
|---|
|
|---|
| And he began to teach them, that the Son of man must suffer many things, and be rejected of the elders, and of the chief priests, and scribes, and be killed, and after three days rise again.
|
|---|
| ᎤᎴᏅᎮᏃ ᏚᏪᏲᏁᎢ, ᎾᏍᎩ ᏴᏫ ᎤᏪᏥ ᎤᏣᏘ ᏧᏓᎴᏅᏛ ᎤᎩ ᎵᏲᎢᏍᏗᏱ; ᎠᎴ ᎬᏩᏲᎢᏎᏗ ᎨᏒ ᏗᏂᎳᏫᎩ, ᎠᎴ ᏄᏂᎬᏫᏳᏒ ᎠᏥᎸ-ᎠᏁᎶᎯ ᎠᎴ ᏗᏃᏪᎵᏍᎩ, ᎠᎴ ᎠᏥᎢᏍᏗᏱ ᎨᏒᎢ, ᏦᎢᏁᏃ ᎢᎦ ᏧᎴᎯᏐᏗ ᎨᏒᎢ.
|
|---|
U-le-nv-he-no du-we-yo-ne-i, na-s-gi yv-wi U-we-tsi u-tsa-ti tsu-da-le-nv-dv u-gi li-yo-i-s-di-yi; a-le gv-wa-yo-i-se-di ge-sv di-ni-la-wi-gi, a-le nu-ni-gv-wi-yu-sv a-tsi-lv--a-ne-lo-hi a-le di-no-we-li-s-gi, a-le a-tsi-i-s-di-yi ge-sv-i, tso-i-ne-no i-ga tsu-le-hi-so-di ge-sv-i.
|
|---|
|
|---|
| And he spake that saying openly. And Peter took him, and began to rebuke him.
|
|---|
| ᎾᏍᎩᏃ ᎯᎠ ᎬᏂᎨᏒ ᏄᏪᏎᎢ. ᏈᏓᏃ ᎤᏯᏅᎲ ᎤᎴᏅᎮ ᎤᎬᏍᎪᎸᏁᎢ.
|
|---|
Na-s-gi-no hi-a gv-ni-ge-sv nu-we-se-i. Qui-da-no u-ya-nv-hv u-le-nv-he u-gv-s-go-lv-ne-i.
|
|---|
|
|---|
| But when he had turned about and looked on his disciples, he rebuked Peter, saying, Get thee behind me, Satan: for thou savourest not the things that be of God, but the things that be of men.
|
|---|
| ᎠᏎᏃ ᎤᎦᏔᎲᏒ, ᎠᎴ ᎬᏩᏍᏓᏩᏗᏙᎯ ᏚᎧᎿᎭᏅ, ᏈᏓ ᎤᎬᏍᎪᎸᏁᎢ, ᎯᎠ ᏄᏪᏎᎢ, ᎠᏆᏐᎭᏛ ᎭᎴᎲᎦ ᏎᏓᏂ; ᎥᏝᏰᏃ ᎤᏁᎳᏅᎯ ᎤᏤᎵ ᎨᏒ ᎣᏏᏳ ᏱᏣᏰᎸᎭ, ᏴᏫᏍᎩᏂ ᎤᎾᏤᎵ ᎨᏒᎢ.
|
|---|
A-se-no u-ga-ta-hv-sv, a-le gv-wa-s-da-wa-di-do-hi du-ka-hna-nv, Qui-da u-gv-s-go-lv-ne-i, hi-a nu-we-se-i, A-qua-so-ha-dv ha-le-hv-ga Se-da-ni; v-tla-ye-no U-ne-la-nv-hi u-tse-li ge-sv o-si-yu yi-tsa-ye-lv-ha, yv-wi-s-gi-ni u-na-tse-li ge-sv-i.
|
|---|
|
|---|
| And when he had called the people unto him with his disciples also, he said unto them, Whosoever will come after me, let him deny himself, and take up his cross, and follow me.
|
|---|
| ᏫᏚᏯᏅᎲᏃ ᏴᏫ, ᎠᎴ ᎾᏍᏉ ᎬᏩᏍᏓᏩᏗᏙᎯ, ᎯᎠ ᏂᏚᏪᏎᎴᎢ, ᎩᎶ ᎤᏚᎵᏍᎨᏍᏗ ᎠᎩᏍᏓᏩᏛᏍᏗᏱ, ᎤᏩᏒ ᎠᏓᏓᏱᎮᏍᏗ, ᎠᎴ ᎤᏩᏒ ᎤᏤᎵ ᏧᏓᎾᏩᏛ ᎠᏱᏍᎨᏍᏗ, ᎠᎴ ᎠᎩᏍᏓᏩᏕᎨᏍᏗ.
|
|---|
Wi-du-ya-nv-hv-no yv-wi, a-le na-s-quo gv-wa-s-da-wa-di-do-hi, hi-a ni-du-we-se-le-i, Gi-lo u-du-li-s-ge-s-di a-gi-s-da-wa-dv-s-di-yi, u-wa-sv a-da-da-yi-he-s-di, a-le u-wa-sv u-tse-li tsu-da-na-wa-dv a-yi-s-ge-s-di, a-le a-gi-s-da-wa-de-ge-s-di.
|
|---|
|
|---|
| For whosoever will save his life shall lose it; but whosoever shall lose his life for my sake and the gospel's, the same shall save it.
|
|---|
| ᎩᎶᏰᏃ ᎤᏚᎵᏍᎨᏍᏗ ᎬᏅ ᎤᏍᏕᎸᏗᏱ, ᎾᏍᎩ ᎤᏲᎱᏎᎮᏍᏗ; ᎩᎶᏍᎩᏂ ᎬᏅ ᎤᏲᎱᏎᎮᏍᏗ ᎠᏴ ᎠᎴ ᎣᏍᏛ ᎧᏃᎮᏛ ᏅᏗᎦᎵᏍᏙᏗᏍᎨᏍᏗ, ᎾᏍᎩ ᎠᏥᏍᏕᎸᏗ ᎨᏎᏍᏗ.
|
|---|
Gi-lo-ye-no u-du-li-s-ge-s-di gv-nv u-s-de-lv-di-yi, na-s-gi u-yo-hu-se-he-s-di; gi-lo-s-gi-ni gv-nv u-yo-hu-se-he-s-di a-yv a-le o-s-dv ka-no-he-dv nv-di-ga-li-s-do-di-s-ge-s-di, na-s-gi a-tsi-s-de-lv-di ge-se-s-di.
|
|---|
|
|---|
| For what shall it profit a man, if he shall gain the whole world, and lose his own soul?
|
|---|
| ᎦᏙᏰᏃ ᏳᏁᏉᏥ ᏴᏫ, ᎢᏳᏃ ᏂᎬᎾᏛ ᎡᎶᎯ ᎤᏤᎵ ᏱᏄᎵᏍᏔᏅ, ᎤᏩᏒᏃ ᎤᏓᏅᏙ ᏳᏲᎱᏎᎸ?
|
|---|
Ga-do-ye-no yu-ne-quo-tsi yv-wi, i-yu-no ni-gv-na-dv e-lo-hi u-tse-li yi-nu-li-s-ta-nv, u-wa-sv-no u-da-nv-do yu-yo-hu-se-lv?
|
|---|
|
|---|
| Or what shall a man give in exchange for his soul?
|
|---|
| ᎠᎴ ᎦᏙ ᏯᎲᎦ ᏴᏫ ᏱᎦᏁᏟᏴᏍᏓ ᎤᏓᏅᏙ?
|
|---|
A-le ga-do ya-hv-ga yv-wi yi-ga-ne-tli-yv-s-da u-da-nv-do?
|
|---|
|
|---|
| Whosoever therefore shall be ashamed of me and of my words in this adulterous and sinful generation; of him also shall the Son of man be ashamed, when he cometh in the glory of his Father with the holy angels.
|
|---|
| ᎩᎶᏰᏃ ᎠᏆᏕᎰᏍᎨᏍᏗ ᎠᏴ, ᎠᎴ ᎠᏴ ᏥᏁᎬᎢ, ᎤᏓᏑᏴ ᎠᏂ ᏗᎾᏓᏲᏁᎯ ᎠᎴ ᎠᏂᏍᎦᎾ ᎠᏁᎲᎢ, ᎾᏍᎩ ᎾᏍᏉ ᏴᏫ ᎤᏪᏥ ᎤᏕᎰᎯᏍᏗ ᎨᏎᏍᏗ, ᎦᎷᏨᎭ ᎤᏄᏬᏍᏕᏍᏗ ᎦᎸᏉᏗᏳ ᎨᏒ ᎤᏙᏓ ᎤᏤᎵᎦ, ᎠᏁᎮᏍᏗ ᎨᏥᎸᏉᏗ ᏗᏂᎧᎿᎭᏩᏗᏙᎯ.
|
|---|
Gi-lo-ye-no a-qua-de-ho-s-ge-s-di a-yv, a-le a-yv tsi-ne-gv-i, u-da-su-yv a-ni di-na-da-yo-ne-hi a-le a-ni-s-ga-na a-ne-hv-i, na-s-gi na-s-quo yv-wi U-we-tsi u-de-ho-hi-s-di ge-se-s-di, ga-lu-tsv-ha u-nu-wo-s-de-s-di ga-lv-quo-di-yu ge-sv U-do-da u-tse-li-ga, a-ne-he-s-di ge-tsi-lv-quo-di di-ni-ka-hna-wa-di-do-hi.
|
|---|


This extension was originally developed by JonLuca DeCaro. They are currently maintaining the code for the Chrome version. It was ported over to this browser by Prayaas Aggarwal. Both, the original extension and this derivative, are open-source and available on GitHub under the MIT license.
For this extension:
Source
Code
-


Version: 1.21.2
Overview
Sensibill is an iOS library that converts paper and email receipts into a digital format, extracting a number of data points such as merchant information, amounts, dates, and line item data.
Data Protection
Important: The library makes the assumption that Data Protection is enabled and working. For this reason, data cached locally (using NSFileManager) does not use secondary encryption on top of Data Protection. The library leaves this work up to iOS assuming that Data Protection is functioning.
Requirements
- Xcode 11.0
- iOS 9.0+
Installation
- Download and Import
SensibillUI.framework
into your project, and ensure that it is included in Embedded Binaries and Linked Frameworks and Libraries - Create a new
Run Script Phase
in your target’sBuild Phases
, underneath theEmbed Frameworks
phase. Input the following command in the text field of the new phase:bash "$BUILT_PRODUCTS_DIR/$FRAMEWORKS_FOLDER_PATH/SensibillUI.framework/strip-unused-architectures.sh"
- Create and Import
Sensibill.plist
into the main bundle of your target. Configure the plist with the following values:- API_KEY: String (optional)
- API_SECRET: String (optional)
- CREDENTIAL_TYPE: String (optional)
- REDIRECT_URL: String (optional)
- CERTIFICATE_PINNING_FILES (optional): Array of Strings
- ENVIRONMENT: String
- Note: Please ensure the URL provided here does not have a trailing slash.
- ENVIRONMENT: String
Note: The keys API_KEY
, API_SECRET
, CREDENTIAL_TYPE
, and REDIRECT_URL
are only required if using a PasswordAuthenticator
. If using a TokenAuthenticator
, only the ENVIRONMENT
key is required.
Using Objective-C
If your application plans to use Classes or APIs of the Sensibill SDK from Objective-C code, you may encounter issues with classes not being found. This is because our public Swift classes/enums/protocols are prefixed with SBL when exposed to Objective-C. The main reason for this is to prevent namespace collisions with your App’s class names. Since classes imported from Swift can be specified with their full namespace, only those imported from Objective-C are prefixed.
For example, the PasswordAuthenticator
Swift class:
- Used in Swift:
PasswordAuthenticator
orSensibillUI.PasswordAuthenticator
- Used in Objective-C:
SBLPasswordAuthenticator
For a practical example, see Quick Start.
Troubleshooting
Image not Found
You may get image not found
error during run time:
Referenced from: /.../SensibillDemo.app/Frameworks/SensibillUI.framework/SensibillUI
Reason: image not found
The following are common ways that this error is caused, and ways to mitigate them:
- Framework was not included in Embedded Binaries
- To fix this ensure that the framework is included in Embedded Binaries in addition to the default Linked Frameworks and Libraries.
- Objective-C only project may not have Swift setup properly
- To fix this simply add a single Swift file to your project using File > New > File…. When Xcode prompts you if you would like to create a Bridging Header click Yes.
No code signature Found
If you encounter an error when installing your app to a physical device:
App installation failed
No code signature found.
Make sure that the Run Script Phase
added during installation has the option Run script only when installing
checked.
Quick Start
Import SensibillUI into the file that will present the Receipt List. Our example assumes that you have registered a user and that you are using Password Authentication. You can dig deeper into documentation for authentication and UIView presentation.
Swift
import SensibillUI
...
PasswordAuthenticator().login(accessId: "accessId", password: "password") { error in
if error == .none {
self.present(ReceiptListViewController(), animated: true, completion: nil)
} else {
// Handle error condition
}
}
Objective-C
@import SensibillUI;
...
SBLPasswordAuthenticator *authenticator = [SBLPasswordAuthenticator new];
[authenticator loginWithAccessId:@"accessId" password:@"password" completion:^(enum SensibillError error) {
if (error == SensibillErrorNone) {
[self presentViewController:[SBLReceiptListViewController new] animated:YES completion:nil];
} else {
// Handle error condition
}
}];


/ Tendencies
{% include "partials/player/content/spider_charts.html" %}
/ Match History
{% if games %}
{% include "partials/player/content/match_history.html" %}
{% else %}
No matches are shared between these players.
{% endif %}


The E.U. General Data Protection Regulation governs the sharing of data by European Union residents. In order to continue using the Carthage College Application from within the E.U., you must agree to all of the following.
{% if form_app.gdpr_cookies.errors %}
{{ form_app.gdpr_cookies.errors|join:", "}}
{% endif %}
I consent to the Carthage College application website’s use of small files stored on the computer, known as cookies, that help the service remember your settings and ensure the website works properly. I consent to The Carthage College application’s use of cookies. If I am under the age of 16, I confirm that my parent or legal guardian has also consented to this same data transfer. I understand that I will have the right to withdraw this consent at any time by contacting Carthage College at<EMAIL_ADDRESS>but doing so will prevent me from continuing to use the Carthage College application service.
{% if form_app.gdpr_transfer.errors %}
{{ form_app.gdpr_transfer.errors|join:", "}}
{% endif %}
I consent to the transfer of my personal data out of the EU and to Carthage College located in the United States. If I am under the age of 16, I confirm that my parent or legal guardian has also consented to this same data transfer. I understand that I will have the right to withdraw this consent at any time by contacting Carthage College at<EMAIL_ADDRESS>but doing so will prevent me from continuing to use the Carthage College application service.
{% if form_app.gdpr_collection.errors %}
{{ form_app.gdpr_collection.errors|join:", "}}
{% endif %}
I consent to the collection of personal data related to my race, religion, gender identity, sexual orientation, and criminal history and the transfer of that data out of the EU to Carthage College who I am considering for application, in order for Carthage College to process my application for admission. If I am under the age of 16, I confirm that my parent or legal guardian has also consented to this same data transfer. I understand that I will have the right to withdraw this consent at any time by contacting Carthage College at<EMAIL_ADDRESS>but doing so will prevent me from continuing to use the Carthage College application service.


At the moment, Lumeer is under an active development. We plan to release at the end of 2017.
Subscribe to our Early Access Program to get news and be able to provide your input and make requests for features.
You can tell us what you think or what you want Lumeer to do for you using our Contact Form.
These are lists of some core features of Lumeer. The lists are not extensive so if you think we miss your favorite feature, do not hesitate to ask for it!
Click on the small question marks to learn more.
Views allow you to see the same data through various lenses depending on your current task. There is a wide palette of options and we keep adding more.
Collaboration with your colleagues and friends is critically important and Lumeer facilitates this with the following features.
Computers are very good at automation and processing large data sets. Lumeer enables this by providing easy to understand business processes. You can start off by creating your own checklist of tasks, add some automated data manipulation steps later, and then share with all of your colleagues when you are ready.
Lumeer supports an extensive number of data manipulation features that are expected from applications working with data.