| 1 |
Mallard |
168 |
26 Sep 2016 |
Norman Uyeda |
|
|
large shorebird sp. |
25 |
3 Sep 2014 |
Christian Schwarz |
N
|
| |
|
| 2 |
Cattle Egret |
20 |
16 Dec 1984 |
Don Roberson |
N
|
| |
|
| 3 |
Bonaparte's Gull |
15 |
12 May 2014 |
Christian Schwarz |
P
|
| |
|
| 4 |
Tricolored Blackbird |
15 |
31 Jan 2016 |
Lorianne Rios |
|
| 5 |
Violet-green Swallow |
14 |
4 Jul 2016 |
Breck Tyler |
N
|
| |
|
| 6 |
Pine Siskin |
13 |
28 Feb 2016 |
Randy Wardle |
|
|
Short-billed/Long-billed Dowitcher |
12 |
29 Apr 2011 |
Steve Gerow |
N
|
| |
|
| 7 |
American Crow |
10 |
26 Sep 2016 |
Norman Uyeda |
|
| 8 |
Wood Duck |
9 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
| 9 |
Band-tailed Pigeon |
8 |
19 May 2016 |
Steve Gerow |
N
|
| |
|
| 10 |
Bushtit |
8 |
26 Sep 2016 |
Norman Uyeda |
|
| 11 |
American Coot |
7 |
26 Sep 2016 |
Norman Uyeda |
|
| 12 |
Common Yellowthroat |
7 |
26 Sep 2016 |
Norman Uyeda |
|
| 13 |
White-crowned Sparrow |
7 |
25 Sep 2016 |
Nellie Thorngate |
|
| 14 |
Eared Grebe |
6 |
13 Feb 2016 |
Lisa Sheridan |
|
| 15 |
Brown Pelican |
6 |
11 Jun 2014 |
Steve Gerow |
N
|
| |
|
| 16 |
Anna's Hummingbird |
6 |
26 Sep 2016 |
Norman Uyeda |
|
| 17 |
European Starling |
6 |
26 Sep 2016 |
Norman Uyeda |
|
| 18 |
Wilson's Warbler |
6 |
26 Aug 2016 |
A Kopitov |
|
| 19 |
Golden-crowned Sparrow |
6 |
26 Sep 2016 |
Norman Uyeda |
|
| 20 |
Semipalmated Plover |
5 |
29 Apr 2011 |
Steve Gerow |
N
|
| |
|
|
gull sp. |
5 |
23 Aug 2016 |
stephanie singer |
N
|
| |
|
| 21 |
California Scrub-Jay |
5 |
26 Sep 2016 |
Norman Uyeda |
|
|
swallow sp. |
5 |
16 Aug 2016 |
Christian Schwarz |
|
| 22 |
Bewick's Wren |
5 |
25 Sep 2016 |
Nellie Thorngate |
|
|
Red-winged/Tricolored Blackbird |
5 |
21 Feb 2016 |
Byron Swift |
|
| 23 |
Downy Woodpecker |
4 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
| 24 |
Chestnut-backed Chickadee |
4 |
26 Sep 2016 |
Norman Uyeda |
|
| 25 |
Red-winged Blackbird |
4 |
13 Sep 2016 |
Eileen Murphy |
|
| 26 |
Ring-necked Duck |
3 |
18 Jan 2015 |
Steve Gerow |
|
| 27 |
Ruddy Duck |
3 |
25 Feb 2016 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 28 |
Great Egret |
3 |
20 Sep 2015 |
Darren Dowell |
|
| 29 |
Killdeer |
3 |
29 Sep 2014 |
Alex Rinkert |
|
| 30 |
Whimbrel |
3 |
25 Apr 2010 |
Steve Gerow |
N
|
| |
|
|
peep sp. |
3 |
29 Apr 2011 |
Steve Gerow |
N
|
| |
|
| 31 |
Eurasian Collared-Dove |
3 |
26 Aug 2016 |
A Kopitov |
|
| 32 |
Barn Swallow |
3 |
26 Aug 2016 |
A Kopitov |
|
| 33 |
Pygmy Nuthatch |
3 |
21 May 2015 |
nicholas kronick |
|
| 34 |
MacGillivray's Warbler |
3 |
23 Aug 2016 |
William Lawton |
N
|
| |
|
| 35 |
Yellow-rumped Warbler |
3 |
25 Sep 2016 |
Nellie Thorngate |
|
| 36 |
Song Sparrow |
3 |
26 Sep 2016 |
Norman Uyeda |
|
| 37 |
California Towhee |
3 |
26 Sep 2016 |
Norman Uyeda |
|
| 38 |
Brewer's Blackbird |
3 |
13 Sep 2016 |
Eileen Murphy |
|
|
passerine sp. |
3 |
25 Nov 2015 |
Jasper Barnes |
|
| 39 |
Gadwall |
2 |
7 Dec 2015 |
Neary Lagoon Program Coordinator |
|
| 40 |
Northern Shoveler |
2 |
13 Feb 2016 |
Lisa Sheridan |
|
| 41 |
Northern Pintail |
2 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
|
teal sp. |
2 |
3 Feb 2014 |
David Sidle |
|
| 42 |
Common Merganser |
2 |
24 Feb 2016 |
Phil Brown |
|
| 43 |
California Quail |
2 |
28 May 2015 |
Julian Arulanantham |
|
| 44 |
Pied-billed Grebe |
2 |
26 Sep 2016 |
Norman Uyeda |
|
| 45 |
Pigeon Guillemot |
2 |
31 May 2010 |
Jeff Bleam |
|
| 46 |
Western Gull |
2 |
8 Sep 2016 |
Christian Schwarz |
|
| 47 |
Rock Pigeon |
2 |
26 Sep 2016 |
Norman Uyeda |
|
| 48 |
White-throated Swift |
2 |
18 May 2015 |
John Garrett |
|
|
hummingbird sp. |
2 |
12 Dec 2015 |
Jonathan Cano |
|
| 49 |
Belted Kingfisher |
2 |
25 Sep 2016 |
Nellie Thorngate |
|
| 50 |
Black Phoebe |
2 |
26 Sep 2016 |
Norman Uyeda |
|
| 51 |
Warbling Vireo |
2 |
26 Aug 2016 |
A Kopitov |
|
| 52 |
Steller's Jay |
2 |
26 Sep 2016 |
Norman Uyeda |
|
| 53 |
Tree Swallow |
2 |
18 Jul 2016 |
Tom Unsicker |
|
| 54 |
Cliff Swallow |
2 |
18 Jul 2016 |
Tom Unsicker |
|
| 55 |
Oak Titmouse |
2 |
1 Sep 2016 |
shirley murphy |
|
| 56 |
Red-breasted Nuthatch |
2 |
13 Oct 2015 |
Christian Schwarz |
|
| 57 |
Marsh Wren |
2 |
18 Jul 2016 |
Tom Unsicker |
|
| 58 |
Ruby-crowned Kinglet |
2 |
26 Mar 2016 |
Juli Chamberlin |
|
| 59 |
American Robin |
2 |
26 Aug 2016 |
A Kopitov |
|
|
warbler sp. (Parulidae sp.) |
2 |
20 Sep 2015 |
Pete Sole |
|
| 60 |
Fox Sparrow |
2 |
25 Sep 2016 |
Nellie Thorngate |
|
| 61 |
Dark-eyed Junco |
2 |
25 Sep 2016 |
Nellie Thorngate |
|
| 62 |
Spotted Towhee |
2 |
26 Sep 2016 |
Norman Uyeda |
|
| 63 |
Western Meadowlark |
2 |
4 Oct 2015 |
Aaron Gabbe |
|
| 64 |
Great-tailed Grackle |
2 |
26 Mar 2016 |
Juli Chamberlin |
|
| 65 |
Brown-headed Cowbird |
2 |
24 Jun 2016 |
Sergey Pavlov |
|
|
blackbird sp. |
2 |
26 May 2016 |
Ketury Stein |
|
|
House/Purple Finch |
2 |
4 Jun 2015 |
Neary Lagoon Program Coordinator |
|
| 66 |
Greater White-fronted Goose |
1 |
7 Apr 2006 |
Phil Brown |
|
| 67 |
Snow Goose |
1 |
7 Dec 2006 |
Phil Brown |
|
| 68 |
Cackling Goose |
1 |
3 Oct 2012 |
Steve Gerow |
P
|
| |
|
| 69 |
Canada Goose |
1 |
20 Apr 2016 |
Bernadette Ramer |
|
| 70 |
American Wigeon |
1 |
15 Mar 2016 |
Zeke Smith |
|
|
Mallard (Domestic type) |
1 |
8 Sep 2016 |
Christian Schwarz |
|
|
Gadwall x Mallard (hybrid) |
1 |
21 Feb 2016 |
Gary Martindale |
N
|
| |
|
| 71 |
Blue-winged Teal |
1 |
29 Mar 2016 |
Neary Lagoon Program Coordinator |
|
| 72 |
Cinnamon Teal |
1 |
7 Apr 2016 |
Neary Lagoon Program Coordinator |
|
|
Blue-winged/Cinnamon Teal |
1 |
16 Feb 2016 |
Norman Uyeda |
N
|
| |
|
| 73 |
Green-winged Teal |
1 |
16 Feb 2016 |
Norman Uyeda |
|
| 74 |
Greater Scaup |
1 |
23 Oct 2007 |
Phil Brown |
|
| 75 |
Bufflehead |
1 |
9 Nov 2013 |
Gary Martindale |
|
| 76 |
Common Goldeneye |
1 |
15 Mar 2016 |
Neary Lagoon Program Coordinator |
|
| 77 |
Hooded Merganser |
1 |
21 Nov 2012 |
Kevin Clark |
|
|
duck sp. |
1 |
25 Nov 2015 |
Jasper Barnes |
|
| 78 |
Red-throated Loon |
1 |
23 Apr 2015 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 79 |
Pacific Loon |
1 |
1 Oct 2013 |
Christian Schwarz |
N
|
| |
|
| 80 |
Common Loon |
1 |
20 Apr 2014 |
Alex Rinkert |
N
|
| |
|
| 81 |
Western Grebe |
1 |
31 Oct 2013 |
Barbara Riverwoman |
N
|
| |
|
| 82 |
Clark's Grebe |
1 |
5 Nov 2013 |
Neary Lagoon Program Coordinator |
|
| 83 |
Brandt's Cormorant |
1 |
2 Oct 2014 |
Jane Rudebusch |
|
| 84 |
Double-crested Cormorant |
1 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
|
cormorant sp. |
1 |
7 Oct 2013 |
Jon Hoch |
N
|
| |
|
| 85 |
American Bittern |
1 |
19 Dec 1987 |
Don Roberson |
|
| 86 |
Great Blue Heron |
1 |
14 Sep 2016 |
Amy Niemeyer |
|
| 87 |
Snowy Egret |
1 |
1 Mar 2016 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 88 |
Green Heron |
1 |
26 Aug 2016 |
A Kopitov |
|
| 89 |
Black-crowned Night-Heron |
1 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
| 90 |
Turkey Vulture |
1 |
18 Feb 2016 |
Madeline Spencer |
|
| 91 |
Osprey |
1 |
15 Dec 2015 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 92 |
White-tailed Kite |
1 |
11 May 2012 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 93 |
Golden Eagle |
1 |
8 Mar 2013 |
Neary Lagoon Program Coordinator |
N
|
| |
|
| 94 |
Northern Harrier |
1 |
20 Oct 2013 |
Christian Schwarz |
N
|
| |
|
| 95 |
Sharp-shinned Hawk |
1 |
25 Mar 2016 |
Jeff Bleam |
|
| 96 |
Cooper's Hawk |
1 |
14 Sep 2016 |
Amy Niemeyer |
|
|
Accipiter sp. |
1 |
8 Jan 2016 |
Steve Gerow |
|
| 97 |
Red-shouldered Hawk |
1 |
26 Sep 2016 |
Norman Uyeda |
P
|
| |
|
| 98 |
Broad-winged Hawk |
1 |
29 Sep 2014 |
John Garrett |
P
|
| |
|
| 99 |
Red-tailed Hawk |
1 |
14 Sep 2016 |
Amy Niemeyer |
|
|
Buteo sp. |
1 |
27 Nov 2015 |
Kyri Freeman |
N
|
| |
|
|
hawk sp. |
1 |
25 Nov 2015 |
Jasper Barnes |
|
| 100 |
Virginia Rail |
1 |
19 Dec 2015 |
Steve Gerow |
|
| 101 |
Sora |
1 |
25 Mar 2016 |
David Wilhelm |
|
| 102 |
Common Gallinule |
1 |
26 Nov 2015 |
Steve Gerow |
P
|
| |
|
| 103 |
Black-necked Stilt |
1 |
13 Sep 2016 |
Eileen Murphy |
|
| 104 |
Black-bellied Plover |
1 |
29 Sep 2014 |
Alex Rinkert |
N
|
| |
|
| 105 |
Long-billed Curlew |
1 |
19 May 2016 |
Steve Gerow |
N
|
| |
|
| 106 |
Marbled Godwit |
1 |
23 Sep 2014 |
Alex Rinkert |
N
|
| |
|
| 107 |
Least Sandpiper |
1 |
29 Apr 2011 |
Steve Gerow |
N
|
| |
|
| 108 |
Short-billed Dowitcher |
1 |
8 Aug 2016 |
Jeanne Gang |
P
|
| |
|
| 109 |
Wilson's Snipe |
1 |
16 Jan 2012 |
Steve Gerow |
|
| 110 |
Red-necked Phalarope |
1 |
26 Aug 2014 |
Nicholas Levendosky |
N
|
| |
|
| 111 |
Greater Yellowlegs |
1 |
13 Apr 2012 |
John Garrett |
N
|
| |
|
| 112 |
Willet |
1 |
26 Aug 2014 |
Nicholas Levendosky |
N
|
| |
|
| 113 |
Heermann's Gull |
1 |
8 Jan 2016 |
Nickie Zavinsky |
|
| 114 |
Mew Gull |
1 |
26 Jan 2016 |
Benny Jacobs-Schwartz |
|
| 115 |
Ring-billed Gull |
1 |
15 Mar 2016 |
Zeke Smith |
|
| 116 |
California Gull |
1 |
18 Jul 2016 |
Tom Unsicker |
|
| 117 |
Herring Gull |
1 |
18 Oct 2014 |
Matthew Dodder |
N
|
| |
|
| 118 |
Thayer's Gull |
1 |
5 Jan 2011 |
Steve Gerow |
|
| 119 |
Glaucous-winged Gull |
1 |
8 Jan 2016 |
Jeff Bleam |
|
|
Western x Glaucous-winged Gull (hybrid) |
1 |
8 Oct 2014 |
Michael Park |
|
|
Herring x Glaucous-winged Gull (hybrid) |
1 |
21 Feb 2011 |
Steve Gerow |
|
|
Larus sp. |
1 |
27 Nov 2015 |
Kyri Freeman |
|
| 120 |
Caspian Tern |
1 |
20 Apr 2015 |
John Garrett |
|
| 121 |
Forster's Tern |
1 |
5 Jul 2007 |
Phil Brown |
|
| 122 |
Mourning Dove |
1 |
14 Sep 2016 |
Amy Niemeyer |
|
| 123 |
Barn Owl |
1 |
18 Oct 2009 |
Steve Gerow |
|
| 124 |
Great Horned Owl |
1 |
20 Feb 2009 |
Steve Gerow |
N
|
| |
|
| 125 |
Burrowing Owl |
1 |
1 Oct 1987 |
Bruce LaBar |
|
| 126 |
Short-eared Owl |
1 |
1 Oct 1987 |
Bruce LaBar |
N
|
| |
|
| 127 |
Vaux's Swift |
1 |
17 Aug 2012 |
Steve Gerow |
N
|
| |
|
| 128 |
Black-chinned Hummingbird |
1 |
10 Sep 2012 |
shirley murphy |
N
|
| |
|
| 129 |
Rufous Hummingbird |
1 |
20 Apr 2011 |
Steve Gerow |
N
|
| |
|
| 130 |
Allen's Hummingbird |
1 |
18 Jul 2016 |
Tom Unsicker |
|
|
Rufous/Allen's Hummingbird |
1 |
26 Mar 2016 |
Juli Chamberlin |
|
| 131 |
Acorn Woodpecker |
1 |
2 Jan 2014 |
Nicholas Levendosky |
|
| 132 |
Red-breasted Sapsucker |
1 |
13 Oct 2015 |
Christian Schwarz |
P
|
| |
|
| 133 |
Nuttall's Woodpecker |
1 |
25 Sep 2016 |
Nellie Thorngate |
|
| 134 |
Hairy Woodpecker |
1 |
15 Sep 2015 |
David Wilhelm |
|
|
Downy/Hairy Woodpecker |
1 |
14 Mar 2015 |
Gary Martindale |
|
| 135 |
Northern Flicker |
1 |
25 Sep 2016 |
Nellie Thorngate |
|
| 136 |
American Kestrel |
1 |
29 Sep 2014 |
Alex Rinkert |
|
| 137 |
Merlin |
1 |
8 Jan 2016 |
Jeff Bleam |
|
| 138 |
Peregrine Falcon |
1 |
9 Jan 2016 |
Pete Sole |
P
|
| |
|
|
falcon sp. |
1 |
14 Mar 2015 |
Steve Gerow |
N
|
| |
|
| 139 |
Olive-sided Flycatcher |
1 |
24 May 2012 |
Steve Gerow |
N
|
| |
|
| 140 |
Western Wood-Pewee |
1 |
25 Sep 2016 |
Nellie Thorngate |
|
| 141 |
Willow Flycatcher |
1 |
15 Sep 2015 |
kent johnson |
|
| 142 |
Least Flycatcher |
1 |
3 Oct 2007 |
Phil Brown |
|
| 143 |
Pacific-slope Flycatcher |
1 |
26 Sep 2016 |
Norman Uyeda |
|
|
Pacific-slope/Cordilleran Flycatcher (Western
Flycatcher)
|
1 |
20 Sep 2015 |
David Sidle |
|
|
Empidonax sp. |
1 |
20 Sep 2015 |
Darren Dowell |
N
|
| |
|
| 144 |
Say's Phoebe |
1 |
18 Oct 2014 |
Matthew Dodder |
N
|
| |
|
| 145 |
Dusky-capped Flycatcher |
1 |
18 Jan 1998 |
Steve Glover |
N
|
| |
|
| 146 |
Tropical Kingbird |
1 |
5 Oct 2014 |
Bob Dunn |
N
|
| |
|
| 147 |
Western Kingbird |
1 |
29 Apr 2008 |
Steve Gerow |
N
|
| |
|
|
yellow-bellied kingbird sp. |
1 |
28 Mar 2012 |
Monte Tudor-Long |
N
|
| |
|
|
flycatcher sp. (Tyrannidae sp.) |
1 |
27 Jul 2016 |
carol long |
N
|
| |
|
| 148 |
Hutton's Vireo |
1 |
26 Aug 2016 |
A Kopitov |
|
| 149 |
Cassin's Vireo |
1 |
23 Aug 2016 |
stephanie singer |
|
| 150 |
Blue-headed Vireo |
1 |
1 Oct 2004 |
Steve Gerow |
N
|
| |
|
| 151 |
Plumbeous Vireo |
1 |
21 Nov 2007 |
Steve Gerow |
N
|
| |
|
| 152 |
Red-eyed Vireo |
1 |
14 Sep 2015 |
Lois Goldfrank |
N
|
| |
|
| 153 |
Yellow-green Vireo |
1 |
19 Oct 2011 |
Kathy Kuyper |
N
|
| |
|
|
vireo sp. |
1 |
24 Aug 2016 |
A Kopitov |
N
|
| |
|
| 154 |
Common Raven |
1 |
18 Jul 2016 |
Tom Unsicker |
|
| 155 |
Northern Rough-winged Swallow |
1 |
18 Jul 2016 |
Tom Unsicker |
|
| 156 |
Purple Martin |
1 |
4 Aug 2007 |
Steve Gerow |
N
|
| |
|
| 157 |
Brown Creeper |
1 |
19 Dec 2015 |
Steve Gerow |
N
|
| |
|
| 158 |
House Wren |
1 |
20 Sep 2015 |
Darren Dowell |
|
| 159 |
Pacific Wren |
1 |
13 Dec 2013 |
Steve Gerow |
N
|
| |
|
| 160 |
Blue-gray Gnatcatcher |
1 |
6 Sep 2012 |
Steve Gerow |
|
| 161 |
Golden-crowned Kinglet |
1 |
27 Jan 2014 |
Patty Murray |
|
| 162 |
Wrentit |
1 |
8 Sep 2016 |
Christian Schwarz |
|
| 163 |
Swainson's Thrush |
1 |
24 Aug 2016 |
A Kopitov |
|
| 164 |
Hermit Thrush |
1 |
25 Mar 2016 |
David Wilhelm |
|
| 165 |
Varied Thrush |
1 |
26 Mar 2016 |
Juli Chamberlin |
|
| 166 |
Northern Mockingbird |
1 |
25 Sep 2016 |
Nellie Thorngate |
|
| 167 |
American Pipit |
1 |
14 Dec 2013 |
Steve Gerow |
|
| 168 |
Black-and-white Warbler |
1 |
27 Jan 2015 |
Erin Phillips |
N
|
| |
|
| 169 |
Tennessee Warbler |
1 |
29 Aug 2006 |
Steve Gerow |
|
| 170 |
Orange-crowned Warbler |
1 |
1 Sep 2016 |
shirley murphy |
|
| 171 |
Lucy's Warbler |
1 |
3 Dec 1997 |
Steve Gerow |
N
|
| |
|
| 172 |
Nashville Warbler |
1 |
25 Sep 2016 |
Nellie Thorngate |
N
|
| |
|
| 173 |
Connecticut Warbler |
1 |
22 Oct 1978 |
Bruce LaBar |
N
|
| |
|
|
MacGillivray's Warbler x Common Yellowthroat (hybrid)
|
1 |
20 Sep 2015 |
Darren Dowell |
P
|
| |
|
|
yellowthroat sp. |
1 |
14 Sep 2015 |
Christian Schwarz |
P
|
| |
|
| 174 |
American Redstart |
1 |
29 Sep 2015 |
Alex Rinkert |
P
|
| |
|
| 175 |
Cape May Warbler |
1 |
15 Apr 2012 |
Rita Carratello |
N
|
| |
|
| 176 |
Northern Parula |
1 |
12 Oct 2012 |
Steve Gerow |
P
|
| |
|
| 177 |
Yellow Warbler |
1 |
8 Sep 2016 |
Christian Schwarz |
|
| 178 |
Chestnut-sided Warbler |
1 |
11 Oct 2012 |
Steve Gerow |
P
|
| |
|
| 179 |
Blackpoll Warbler |
1 |
29 Sep 2014 |
Alex Rinkert |
P
|
| |
|
| 180 |
Palm Warbler |
1 |
7 Oct 2014 |
shirley murphy |
|
| 181 |
Black-throated Gray Warbler |
1 |
26 Aug 2016 |
A Kopitov |
|
| 182 |
Townsend's Warbler |
1 |
26 Sep 2016 |
Norman Uyeda |
|
| 183 |
Hermit Warbler |
1 |
26 Sep 2015 |
Lois Goldfrank |
N
|
| |
|
| 184 |
Yellow-breasted Chat |
1 |
17 May 2008 |
Alex Rinkert |
|
| 185 |
Le Conte's Sparrow |
1 |
29 Oct 1983 |
Bruce LaBar |
N
|
| |
|
| 186 |
American Tree Sparrow |
1 |
29 Oct 1983 |
Bruce LaBar |
N
|
| |
|
| 187 |
Chipping Sparrow |
1 |
29 Sep 2015 |
Alex Rinkert |
P
|
| |
|
| 188 |
Clay-colored Sparrow |
1 |
27 Oct 2012 |
Jennifer Rycenga |
N
|
| |
|
| 189 |
Lark Sparrow |
1 |
14 Oct 2013 |
Lois Goldfrank |
N
|
| |
|
| 190 |
White-throated Sparrow |
1 |
25 Sep 2016 |
Nellie Thorngate |
N
|
| |
|
| 191 |
Savannah Sparrow |
1 |
2 Oct 2015 |
Christian Schwarz |
P
|
| |
|
| 192 |
Lincoln's Sparrow |
1 |
25 Sep 2016 |
Nellie Thorngate |
|
| 193 |
Swamp Sparrow |
1 |
14 Dec 2014 |
Steve Gerow |
N
|
| |
|
| 194 |
Western Tanager |
1 |
23 Aug 2016 |
stephanie singer |
|
| 195 |
Rose-breasted Grosbeak |
1 |
18 Aug 2012 |
Nicholas Levendosky |
N
|
| |
|
| 196 |
Black-headed Grosbeak |
1 |
16 Aug 2016 |
Christian Schwarz |
|
|
Rose-breasted/Black-headed Grosbeak |
1 |
3 Oct 2012 |
Steve Gerow |
|
| 197 |
Lazuli Bunting |
1 |
20 Sep 2015 |
Darren Dowell |
N
|
| |
|
| 198 |
Indigo Bunting |
1 |
10 Jun 2004 |
Phil Brown |
|
|
Lazuli/Indigo Bunting |
1 |
12 Aug 2012 |
Steve Gerow |
N
|
| |
|
| 199 |
Orchard Oriole |
1 |
5 Oct 2012 |
John Garrett |
N
|
| |
|
| 200 |
Hooded Oriole |
1 |
4 Jul 2016 |
Peter Svensson |
|
| 201 |
Bullock's Oriole |
1 |
14 May 2015 |
Neary Lagoon Program Coordinator |
|
| 202 |
House Finch |
1 |
26 Sep 2016 |
Norman Uyeda |
|
| 203 |
Purple Finch |
1 |
28 Feb 2016 |
Randy Wardle |
|
| 204 |
Red Crossbill |
1 |
19 Dec 1987 |
Don Roberson |
N
|
| |
|
| 205 |
Lesser Goldfinch |
1 |
16 Aug 2016 |
Christian Schwarz |
|
| 206 |
American Goldfinch |
1 |
26 Mar 2016 |
Juli Chamberlin |
|
| 207 |
House Sparrow |
1 |
19 May 2016 |
Steve Gerow |
|
| 208 |
Canvasback |
X |
2 Jan 2014 |
Tom Unsicker |
|
| 209 |
Spotted Sandpiper |
X |
8 May 2016 |
Kevin Condon |
|
| 210 |
Wandering Tattler |
X |
11 Sep 1977 |
John Loch |
|
| 211 |
Red-naped Sapsucker |
X |
14 Feb 2003 |
Nickie Zavinsky |
|
| 212 |
Ash-throated Flycatcher |
X |
8 May 2016 |
Kevin Condon |
|
| 213 |
Cedar Waxwing |
X |
8 May 2016 |
Sierra Zacks |
|
|
sparrow sp. |
X |
8 May 2016 |
Sierra Zacks |
|
|
Spinus sp. (goldfinch sp.) |
X |
15 Jan 2013 |
Kurt Ongman |
|


§412:1-108 Jurisdiction conferred upon circuit court. For all matters requiring or permitting judicial action or remedy in this chapter, jurisdiction is conferred upon the circuit court of the judicial circuit in which the principal office in this State of the affected financial institution is located. [L 1993, c 350, pt of §1]
Cross References
Jurisdiction of circuit courts, see chapter 603, part III.


We all have come here for one reason, coding. At Kätzchen we are prepared to assist your curiousity, discuss the financials, set you up with some pre-coursework, and plant a seed that will grow into a career. Please enjoy this brief quiz along with small descriptions of what we offer.
Your results indicate you might be interested in Scratch.
It appears you might be interested in Swift.
You should consider C#.
It might benefit you to check out Koitlin.
NASA needs you for a blind study!
A programming language designed for young people.
This language was developed to create applications for Apple platforms.
A general-purpose language designed by Microsoft to work across a variety of platfroms.
A multi-purpose JAVA-based language for Android application development.


Hi! I'm Leila. /ˈlilɑ/
I'm a National Scholar and 2x Academic All-Canadian at the University of Toronto. I'm a rising senior studying CS and statistics, trying to decide between grad school and industry.
I'm excited to be interning on Facebook's Feed Ranking team this summer, while organizing logistics for U of T Hacks in my spare time.
In the past, I've made a useful website for U of T students and interned twice at Google (in Mobile Search and Gmail SRE). When I'm not too busy I love playing hockey and soccer, reading scifi, and canoeing through Algonquin Park.
Wanna get in touch? Ping me! I'd love to chat.


I code things from scratch_
[and help to create great web apps]
[and help to create great web apps]
WEB
/ I will help you to create a high-performance Landing Page, functional corporate website for your business, interactive web app for SaaS, startup, or other services.
/ My specialization is front-end development — client side of the web. But I also have full-stack developer experience.
completed projects
My personal _projects
Technology: HTML5, CSS3, JS
Technology: HTML, CSS, JavaScript, PHP
Technology: React.js, Node.js
Technology: HTML, CSS, JavaScript, Wordpress
Technology: React.js, Node.js
Technology: React.js, Node.js
Technology: React.js, Node.js
Technology: React.js, Node.js
Technology: React.js, Node.js
Technology: React.js, Node.js
Teamwork _projects
Technology: React.js, Node.js
Technology: React.js, Node.js
Calculate_ the cost of a desired Salary
This is an approximate calculation
This is an approximate calculation
/ The final cost depends on the results of the interview


#include <tinyxml.h>
Inheritance diagram for TiXmlDocument:
Public Member Functions | |
| TiXmlDocument () | |
| Create an empty document, that has no name. | |
| TiXmlDocument (const char *documentName) | |
| Create a document with a name. The name of the document is also the filename of the xml. | |
| TiXmlDocument (const std::string &documentName) | |
| Constructor. | |
| bool | LoadFile (TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING) |
| Load a file using the current document value. | |
| bool | SaveFile () const |
| Save a file using the current document value. Returns true if successful. | |
| bool | LoadFile (const char *filename, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING) |
| Load a file using the given filename. Returns true if successful. | |
| bool | SaveFile (const char *filename) const |
| Save a file using the given filename. Returns true if successful. | |
| bool | LoadFile (FILE *, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING) |
| Load a file using the given FILE*. | |
| bool | SaveFile (FILE *) const |
| Save a file using the given FILE*. Returns true if successful. | |
| bool | LoadFile (const std::string &filename, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING) |
| bool | SaveFile (const std::string &filename) const |
| < STL std::string version. | |
| virtual const char * | Parse (const char *p, TiXmlParsingData *data=0, TiXmlEncoding encoding=TIXML_DEFAULT_ENCODING) |
| Parse the given null terminated block of xml data. | |
| const TiXmlElement * | RootElement () const |
| Get the root element -- the only top level element -- of the document. | |
| bool | Error () const |
| If an error occurs, Error will be set to true. | |
| const char * | ErrorDesc () const |
| Contains a textual (english) description of the error if one occurs. | |
| int | ErrorId () const |
| Generally, you probably want the error string ( ErrorDesc() ). | |
| int | ErrorRow () |
| Returns the location (if known) of the error. | |
| int | ErrorCol () |
| The column where the error occured. See ErrorRow(). | |
| void | SetTabSize (int _tabsize) |
| SetTabSize() allows the error reporting functions (ErrorRow() and ErrorCol()) to report the correct values for row and column. | |
| void | ClearError () |
| If you have handled the error, it can be reset with this call. | |
| void | Print () const |
| Dump the document to standard out. | |
| virtual void | Print (FILE *cfile, int depth=0) const |
| Print this Document to a FILE stream. | |
| virtual const TiXmlDocument * | ToDocument () const |
| Cast to a more defined type. Will return null not of the requested type. | |
| virtual TiXmlDocument * | ToDocument () |
| Cast to a more defined type. Will return null not of the requested type. | |
Protected Member Functions | |
| virtual TiXmlNode * | Clone () const |
| Create an exact duplicate of this node and return it. |
A document binds together all the XML pieces. It can be saved, loaded, and printed to the screen. The 'value' of a document node is the xml file name.
|
|
If you have handled the error, it can be reset with this call. The error state is automatically cleared if you Parse a new XML block. |
|
|
Create an exact duplicate of this node and return it. The memory must be deleted by the caller. Implements TiXmlNode. |
|
|
If an error occurs, Error will be set to true. Also,
|
|
|
Generally, you probably want the error string ( ErrorDesc() ). But if you prefer the ErrorId, this function will fetch it. |
|
|
Returns the location (if known) of the error. The first column is column 1, and the first row is row 1. A value of 0 means the row and column wasn't applicable (memory errors, for example, have no row/column) or the parser lost the error. (An error in the error reporting, in that case.)
|
|
|
|
|
|
Load a file using the given FILE*. Returns true if successful. Note that this method doesn't stream - the entire object pointed at by the FILE* will be interpreted as an XML file. TinyXML doesn't stream in XML from the current file location. Streaming may be added in the future. |
|
|
Load a file using the current document value. Returns true if successful. Will delete any existing document data before loading. |
|
|
Parse the given null terminated block of xml data. Passing in an encoding to this method (either TIXML_ENCODING_LEGACY or TIXML_ENCODING_UTF8 will force TinyXml to use that encoding, regardless of what TinyXml might otherwise try to detect. Implements TiXmlBase. |
|
|
Get the root element -- the only top level element -- of the document. In well formed XML, there should only be one. TinyXml is tolerant of multiple elements at the document level. |
|
|
SetTabSize() allows the error reporting functions (ErrorRow() and ErrorCol()) to report the correct values for row and column. It does not change the output or input in any way. By calling this method, with a tab size greater than 0, the row and column of each node and attribute is stored when the file is loaded. Very useful for tracking the DOM back in to the source file. The tab size is required for calculating the location of nodes. If not set, the default of 4 is used. The tabsize is set per document. Setting the tabsize to 0 disables row/column tracking. Note that row and column tracking is not supported when using operator>>. The tab size needs to be enabled before the parse or load. Correct usage: TiXmlDocument doc; doc.SetTabSize( 8 ); doc.Load( "myfile.xml" );
|


The returned angle is the acute angle, i.e the smallest of the two angles.
- Parameters
-
| [in] | rhs | The second vector to calculate the angle with |
- Returns
- The angle, in radians, between the vectors
- Parameters
-
| [in] | rhs | The second vector to calculate the distance with |
- Returns
- The distance between the two vectors
The dot product is a value equal to the magnitudes of the two vectors multiplied together and then multiplied by the cosine of the angle between them.
- Parameters
-
| [in] | rhs | The second vector dot multiply with |
- Returns
- The dot product of the two vectors (in radians)
- Returns
- The length of the vector.
- Returns
- The magnitude (length) of the vector.
Returns the normalized form of this vector
Homegenizes the vector (divides all components by w so that w == 1)
Calculates the midpoint of the two provided points.
- Parameters
-
- Returns
- The midpoint vector
Normalizes the vector. When normalized, a vector maintains its direction but its magnitude is set to 1.0.
The documentation for this class was generated from the following files:
- C:/Projects/OcularEngine/OcularCore/include/Math/Matrix3x3.hpp
- C:/Projects/OcularEngine/OcularCore/include/Math/Vector4.hpp
- C:/Projects/OcularEngine/OcularCore/src/Math/Vector4.cpp


Welcome to the Wage Calculator for Portland Metro area AMR. To get started simply enter your anualized wage step in the form below. Check the appropriate box for lead and fto status. If you are an FTO please check both the Lead and FTO check boxes to ensure proper calculation. The results are formatted in a similar fashion to the way the paystub reads. Please consider that this was created out of my free time - UPDATES FOR THE NEW CONTRACT ARRIVED
| Base | Overtime | Hold Over | Premium OT | |
| 8 Hour | 8 | 8 | 8 | 8 |
| 10 Hour | 8 | 8 | 8 | 8 |
| 12 Hour | 8 | 8 | 8 | 8 |
| 24 Hour | 8 | 8 | 8 | 8 |
| Differential |
| Base | "EMSC Wages", "Vac Corp", "Time Entry Wages" |
| Overtime | "OT EMSC", "Vac OT" |
| Hold Over | "Hldovr OT", "Hol Hrly" |


porky hefer channels chemical reactions with molecule-shaped seating pods
by nina azzarellocape town-based gallery southern guild is set to present a punch of ‘african-pop’ vibes, including major new works by artist porky hefer at design miami/ 2019. hefer previously designed a series of sculptural seating pods depicting endangered species, taking the form of an oversized orangutan, polar bear, sloth, blue whale, and great white shark. now, the artist draws from the complexity of human connections to both each other and the natural world with his latest work. ‘molecules’ comprises a new collection of leather hanging pods that form the centerpiece of the gallery’s booth.
hefer’s collection of three suspended orbs bear titles that relate to the chemical compounds they represent: dihydrogen monoxide, fluoroheliate monoxide and hydrogen difluoride. each of the pieces is wrapped in bold, brilliant leathers that pay homage to the international color codes atoms are known by — white for hydrogen, red for oxygen, green for chlorine. internally, the pods are plushly lined with sheepskin, inviting people to climb inside and nestle within.
the ‘molecules’ have been manufactured by the leather artisans at wolf & maiden in cape town. founder wade ross skinner and his team of leathersmiths worked closely with hefer, applying impeccable craftsmanship on a large scale. the collection is inspired by the idea of molecules being made up of atoms held together by chemical bonds that form as a result of the sharing or exchange of electrons. the project also continues the artist’s ongoing fascination with the reactions and energy a piece can generate within a space. find ‘molecules’ at southern guild’s booth at design miami/ 2019.
project info:
artist: porky hefer
gallery: southern guild
presented at: design miami/ 2019


A PASSION FOR LIVING LIFE WELL
How do we make the most of the life God has given us? Who doesn't want to answer that question well? Yet often it can often feel like we’re muddling along in our Christian lives, we often talk a good game, but somehow never quite translate those ideals into reality. The CROWN rhythm provides a framework based upon sound Biblical principles that can help lead us into lasting growth as disciples of Jesus as we form our own rule of life.
What is a rule of life? Why CROWN? How can this bring life to me? What pitfalls do I need to avoid?
If you are new to CROWN and have questions please visit the foundations section. There we introduce the core principles in a series of short videos that explain more.
These are great to review as you begin to form your patterns, to ensure they are faithful and faith-filled!
We have videos and other resources available for the five sections of CROWN, covering Community, Re-Create, Offering, Word and Networks. These introduce the Biblical principles, and suggest ways that we might begin to interpret and apply them into our day to day lives.
For Mentors and leaders, we have guides, study materials and resources to assist you. CROWN is not a course it’s a tool to help form a sustainable and life-giving Christian lifestyle. This is a long-haul, and will require both encouragement and challenge! Ultimately, we want to help people position themselves to pursue God though rhythms that help them experience more of his presence and blessings day by day.


{% extends "accounts/base.html" %} {% block accounts_content %}
{% trans %}Please enter your e-mail address. Your password will be reset and you will get a chance to choose a new password.{% endtrans %}
{% if form %} {% include "accounts/_recover_form.html" %} {% endif %}{% trans %}TIP: You are advised to verify the domain and certificate in the URL bar before submitting your e-mail address.{% endtrans %}


--- layout: post title: "This Week's CSA Box (and How I'll Use It)" date: 2022-07-13 12:16:00 +0000 tags: menu image: imagecredits: ---
I'm on my own today — Kin is out of town until Friday and Kaia is up in Eugene visiting her mom and won't be back for 10 days. So the CSA is going to overwhelm me, I reckon. Here's what I'm expecting:
I'll also get a dozen eggs and nectarines, pluots, and peaches.
And here's what's on the menu: leftovers, heh. That is, I'll eat up what's in the fridge until Saturday, when I'm planning on making fried chicken sandwiches, along with home fries with some of the potatoes (from this week and last). The cucumber will be used in Sunday's meal: Korean barbecue-style meatballs. I'm making orange chicken and rice bowls on Monday and the recipe calls for "4 cups of chopped veggies" — so that'll use up the squash and beans. Tuesday night, I'm making sweet and spicy tofu with soba noodles, and I'll sauté the chard. Wednesday night, I'm making refried beans and tortillas. And Thursday — I think the first meal when Kaia returns — I'm making gnocchi with an edamame pesto. I never worry about using up carrots - they always seem to get eaten.
Fruitwise: I'm planning on making a frangipane tart this weekend with the pluots. I'll use the peaches in more of the peach syrup I made last weekend. I bought some small jars, and I'm going to try canning this batch. The stone fruit will also go in my weekly batch of superhero muffins, as well as into my daily smoothies.  More calories. Yay! And damn, I do love summer fruits for getting me there.


--- layout: post title: Mini Lemon Tarts and Thumbprint Cookies date: 2010-01-23 00:25:02.000000000 -05:00 type: post published: true status: publish categories: - cookies tags: - cookies - lemon curd - miniature - shortbread - tarts meta: _oembed_3c43f84e1da5a19e3ec6a6861f9a096b: author: login: sophie email<EMAIL_ADDRESS>display_name: Pika first_name: '' last_name: '' ---
Mini lemon curd tarts, a mashup of this recipe and this one. Omg, delicious-- the cookie is moist and buttery, the curd tangy and lemon-y. Definitely one of the best things I have tasted in a while. Next time I might cook the curd a little longer on the stove, though. It was great after baking again in the oven, but as-is was a little runny.
Leftover dough+ curd = thumbprint cookies!


doctools::msgcat - Message catalog management for the various document parsers
The package doctools::msgcat is a support module handling the selection of message catalogs for the various document processing packages in the doctools system version 2. As such it is an internal package a regular user (developer) should not be in direct contact with.
If you are such please go the documentation of either
doctools::doc,
doctools::toc, or
Within the system architecture this package resides under the various parser packages, and is shared by them. Underneath it, but not explicit dependencies, are the packages providing the message catalogs for the various languages.
The command locates and loads the message catalogs for all the languages returned by msgcat::mcpreferences, provided that they could be found. It returns an integer number describing how many packages were found and loaded.
The names of the packages the command will look for have the form "doctools::msgcat::prefix::langcode", with prefix the argument to the command, and the langcode supplied by the result of msgcat::mcpreferences.
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category doctools of the Tcllib Trackers. Please also report any ideas for enhancements you may have for either package and/or documentation.
When proposing code changes, please provide unified diffs, i.e the output of diff -u.
Note further that attachments are strongly preferred over inlined patches. Attachments can be made by going to the Edit form of the ticket immediately after its creation, and then using the left-most button in the secondary navigation bar.
catalog package, docidx, doctoc, doctools, i18n, internationalization, l10n, localization, message catalog, message package
Documentation tools
Copyright © 2009 Andreas Kupries <andreas_kupries@users.sourceforge.net>


§657-3.5 Relation back of amendments. An amended pleading relates back to the date of the original pleading as provided by the rules of court.
Nothing herein limits or affects section 657-3. [L 1972, c 105, §1(c)]


) with all the pages not marked to
be excluded from the navigation.
The entries will be ordered by the "nav_order" front matter, and if the
pages are within a folder it will create a section for those entries (only
1 level deep).
Jekyll doesn't offer a way to see if there are next or previous pages, as
it is only available for posts. As we have a specific other anyway, this
will also create the "previous_page" and "next_page" global variables with
URLs to add as links/buttons in other parts of the layout.
WARNING! The looping around the list of pages here is not a good method
to implement this, but the Liquid template language is very limited.
{%- endcomment -%}
{%- assign sections = "" %}
{%- assign last_loop_page = false %}
{%- assign set_next_page = false %}
{%- assign nav = site.pages | sort:"nav_order" %}
{%- comment %} First loop to print pages without categories and collect an array of categories {%- endcomment %}
{%- for nav_item in nav %}
{%- if nav_item.hide != true and nav_item.nav_exclude != true %}
{%- assign path_array = nav_item.dir | split: "/" %}
{%- assign array_size = path_array | size %}
{%- if array_size == 0 %}
{%- if nav_item.url == page.url %}
{%- include toc.html html=content sanitize=true h_max=4 item_class="toctree-l%level%" %}
{%- if nav_item.url == page.url %}
{%- assign previous_page = last_loop_page %}
{%- assign set_next_page = true %}
{%- endif %}
{%- else %}


Best gifts: Tech gadgets for non-techies
by Adrian Kingsley-HughesPerfect gifts for the non-techie friends and family in your life.
It may come as a bit of a surprise to some, but not everyone out there is as in love with technology as we techies. But that doesn't mean non-techies won't find tech gifts useful. And who knows, next year they too may be converted into a stalwart tech-head!
Non-techie gifts
Disclosure: ZDNet may earn a commission from some of the products featured on this page.
Jackery Explorer 500 for $500
- See it now: Amazon
Ideal for those who experience regular power outages, or those who like to go into the nature of the wilderness and still take power with them. The Jackery Explorer 500 contains a massive 518Wh of power, so it's like having a generator, without all the hassles of gasoline and fumes.
It features a 12V power outlet, three USB ports, and an AC outlet rated for 500 watt (or surge loads of 1000W). It can be recharged from a power outlet, or for off-grid use, you can charge it up using the optional Jackery SolarSaga 100W solar panel.
Amazon Echo Dot with Built-in Clock for $60
- See it now: Amazon
Here is one of those bits of technology that can do a lot, but isn't intimidating for the non-techie. Not only does this Echo Dot do all the things you expect -- such as play music, audiobooks, read out news, and much more -- but it features a nice and stylish built-in clock.
Fire 7 Tablet for $50
- See it now: Amazon
The perfect tablet for those who don't think they need a tablet, for those who are hip-deep in the Amazon ecosystem, or who just don't need the power -- or price tag -- of an iPad. These tablets are also great for situations where an iPad would be overkill (kitchen use, or in the garage).
Kids also love them.
Apple TV for $179
- See it now: Apple
This is probably one of the easiest and best entertainment and home automation hubs, especially for those who already use iPhones, iPads, and Macs. It's small, discreet, yet offers a window into a massive entertainment and app ecosystem that Apple has to offer. And now, you get a year of Apple TV+ subscription service.
Backblaze
- See it now: Backblaze
Backblaze is a powerful and reliable backup made easy. It's the perfect gift for someone who either doesn't feel there's value in backing up their data (but would be devastated if they lost data) or who needs a simple solution that sits in the background and just works.
NOCO GB150 for $100
- See it now: Amazon
A super-powerful, ultra-safe vehicle jump starter that can handle gasoline and diesel engines up to 10 liters in size. It's big and hefty and enclosed in a rugged and water-resistant enclosure rated at IP65. But there's a twist -- it also doubles as a power bank for recharging smartphones, tablets, and other devices such as drones.
And there's also a handy 500 lumens LED light.
Tile Pro for $25
- See it now: Amazon
Know someone who is always misplacing keys and other things? Get them a Tile Pro, and not only can they use their smartphone to make the Tile ring, but they can also use the Time to find a lost phone.
And best of all, the battery is user-replaceable, which is just awesome.
Nest Protect for $120
- See it now: Best Buy
This is one bit of home tech that you hope just sits there and does nothing. However, you also hope that if it is needed, it will do its job, and do it well. The Nest Protect is a sentinel that watches over your home, keeping its digital eyes and ears open for fire, smoke, and carbon monoxide.
Quick and easy to install and set up, this is a gift that gives peace of mind.
Kindle Paperwhite for $90
- See it now: Amazon
Yes, you can read ebooks on smartphones and tablets, but nothing beats the Kindle Paperwhite for a distraction-free experience that comes close to reading words off a page. The never Kindle Paperwhite devices have amazing battery life, masses of capacity, and is even waterproof (so you can read in the bath or pool!).
Philips Hue Starter Kit for $200
- See it now: Amazon
Smart bulbs are a great entry into home automation. But be aware, you get someone a few bulbs, and pretty soon their homes are packed with smart bulbs, thermostats, doorbells and much more!
DJI Mavic Mini for $400
- See it now: Amazon
Drones are a great toy, and also a fantastic gift for a photographer or videographer who wants to try something new. And the DJI Mavic Mini is a superb way to get into drone piloting -- not only is it cheap-ish, it's also a dream to fly, and the photos and videos are captured are simply stunning.
RAVPower PD Pioneer 20000mAh 3-Port Power Bank for $50
- See it now: RAVPower
This is the perfect power bank for someone who isn't a techie. Why? Because you can charge it with pretty much any cable you have -- MicroUSB, USB-C and even a Lightning connector. This versatility, combined with the easy-to-read digital display and huge 20000mAh, makes this a winner.


{% extends "housing_reviews/base.html" %} {% block panel-title %}Letting agencies{% endblock %} {% block content %}
In this page you can see a list of the major, if not all the letting agents operating in St Andrews.
If you click their names, you'll be taken to a list of reviews for them (if any exist).
Hopefully it will help you decide who you want to do business with.
| Agency | Average rating | Website |
|---|---|---|
| {{ agency.name }} | {% if agency.rating.votes > 0 %} ({{ agency.rating.votes }} ratings) {% else %} No ratings yet. {% endif %} | {{ agency.website }} |


Galvanize Delivers
menu
Order Delivery
Order Delivery
Menu
Royale with Cheese
$8.99
Add to Order
Arugula Pie
$11.99
Add to Order
Smoked Swine
$14.99
Add to Order
Ice Cream Biscuit
$7.99
Add to Order
Order
Item
Price
Subtotal
$0.00
Tax
$0.00
Total
$0.00
account_circle
Name
phone
Phone Number
business
Address
place order


lane
:beta
do
increment_build_number
build_app
upload_to_testflight
end
lane
:beta
do
increment_build_number
build_app
upload_to_testflight
end
lane
:appstore
do
capture_screenshots
build_app
upload_to_app_store
slack
end


9 of the worst viruses on Earth
by Mary Jo DiLonardoGoing viral
You've heard of Ebola and likely Zika, but there are many dangerous viruses that have yet to make horrific headlines. A panel of scientists and public health experts gathered by the World Health Organization (WHO) met to discuss the top emerging pathogens most likely to cause severe outbreaks in the near future. These are viruses for which there is no vaccine and few, if any, treatments.
Here's a look at these diseases and what makes them so frightening.
Editor's note: This gallery has been updated since it was originally published in June 2016.


imgNotes Plugin - note display using modal dialogThis example demonstrates note display using a modal dialog instead of a tooltip. This requires custom onAdd and onShow callbacks. The jQuery UI dislog is used for note display with the position attribute used to ensure the dialog is always within the image. |


This is the API documentation for 'RDoc Documentation'.
[Validate]
Generated with the Darkfish Rdoc Generator 2.


This was my first project of the course where I had to replicate the 15 puzzle game in C++ using different techniques such as a binary tree. This project really taught me the foundation of C++.
Check it outThis project was done in my first semester of university, the features of the project include: Texture Mapping, Scene Graphs, Scene Management, Index Buffers, Skeletal Animation, Real Time Lighting, Cube Mapping, Shadow Mapping, Reflections and Bump Maps.
Check it outThis was my final project for the first semester of university. I made a physics based game, and experimented with different physics. The goose could fly, swim in the water surrounding the map due to the collision of the 'water' being lowered so that the goose wood sink into it and the friction also being lowered on the object, bounce on the trampolines, collide with objects and use the speed ramps up above the goose.
Check it outFor this project I had to quickly make a prototype. This was to show fun game mechanics/interesting gameplay for the group project that I am collaborating on. And could be made using fast prototype technologies such as blueprints.
Check it out


Orca, Emacspeak and Chromium Accessibility on A Raspberry Pi Running Manjaro ARM
I wanted to get a gift for my blind friend who has been interested in learning Linux for a while now. Just when I was about to start looking for something I decided to take a look at Brian Lunduke’s newest video featuring the Raspberry Pi 400. The Raspberry Pi 400 has come full circle in terms of computing. It is a keyboard. All the computing is done from within the keyboard. Much like the Comodore64, this computer comes without a screen but is still technically fully functional without one. I had my ‘Aha!’ moment, and decided that the Raspberry Pi 400 would be a very cool present.
No Headphone Jack
My first problem was that the Raspberry Pi 400 does not come with a headphone jack, even though every other Raspberry Pi A/B/B+ board with the exception of the compute modules and Zero series have included one. That said, the Raspberry Pi audio jacks are also known to crackle and pop due to either bad drivers or cheap manufacturing.
To compensate, I got an external USB audio card. I ended up going with the DuKabel USB to 3.5mm Jack Adapter (Amazon).
There are cheaper options for sure, but when I was looking around Raspberry Pi forums and Amazon reviews, this specific model seemed to come out on top in terms of performance. It costed me around 40 Canadian dollars. I figure this isn’t too bad considering my friend doesn’t need a screen, haha!
Distribution
I wanted to choose something which will age well, and run the latest and greatest. For visually impaired users, the most important piece of software is the screen reader. If the screen reader doesn’t work, the rest of the work is toast! Some Raspberry Pi Orca installation guides like this one, have actually asked the user to compile Orca from source to get the latest version due to how out-of-date Debian’s package repositories are. A distribution which has none of these fusses was top priority, especially because Orca receives frequent updates.
I decided to go with Manjaro ARM Xfce:
- Xfce is lightweight.
- Runs a 64-bit kernel.
- Is based on Arch Linux, so receives very frequent package updates.
- Has the AUR (with some effort, as we’ll see).
The only downside of Manjaro ARM, and likewise other Aarch64 (ARM 64-bit) architecture kernels is that it did not have HEVC nor H264 hardware decoding available.
Apparently, support for the Raspberry Pi’s VC4 graphics is getting mainlined in Linux kernel 5.10.
Unfortunately, running the release candidate (RC) kernel did not make the Raspberry Pi 400 use hardware decoding.
Perhaps other applications like ffmpeg
and Chromium need to add support as well before this works.
Orca
As stated before, minimum requirement for a visually impaired desktop Linux user is a screen reader.
The most used screen reader for Linux is Orca, headed by the GNOME Project.
This is relatively easy to install with a standard pacman
command.
# pacman -S orca
If logged in via SSH, you can start Orca with the orca
command. This will start reading the screen to you so you can do the next parts.
To activate Orca on login with LightDM, enable it in the ‘LightDM GTK+ Greeter Settings’ application. The ‘Misc.’ tab will have a drop-down for asking which screen reader you want to use. This will start Orca when the LightDM login system starts.
LightDM’s Orca will not help us once we are logged in however. To activate Orca on login, open the ‘Session And Startup application’ program, then add Orca to the “startup” list of apps.
And now Orca will be activated on boot and login.
AUR
The AUR, or the Arch User Repository has community maintained and distributed packages. Basically, you download a file which will tell your computer how to download, build and install a package for you.
To get the AUR working in a more automatic way, we need to install the pacaur
helper.
This merited its own article, so check that out here:
How to Install Pacaur on Manjaro ARM
The TL;DR is that we need to open the /etc/makepkg.conf
file and replace any mention of -march=armv8-a
with -march=armv8-a+crypto
.
This can be done as a oneliner, thanks to the sed
command.
# sed -i 's/-march=armv8-a/-march=armv8-a+crypto/' /etc/makepkg.conf
Emacspeak
Emacs is a scriptable document editor run by the GNU Project. Infamous for its high learning curve though it may be, there is a very extensive speech extension for it called Emacspeak. Emacspeak is built entirely by T. V. Ramen and has been freely available since its inception in 1999. Due to its age (and thus maturity), Emacspeak is an important tool in any “eyes-free” software developer toolkit.
Lucky for me, Emacspeak appears to not only to be available in the AUR, but also compilable with the Aarch64 architecture—the architecture of the Raspberry Pi 400. So this is as easy to install as:
$ pacaur -S emacspeak
Web Browsers
I’ll cover a couple web browsers here based on how they worked.
Firefox
Firefox will run in accessibility mode with caret browsing enabled automatically when it detects Orca is running. This makes Firefox by far the best browser for the job.
Chromium
Chromium… Ugh. So it works, sort of. You need to enable two special flags, and add an environment variable.
To do this, I suggest editing the main profile in /etc/profile
.
Add the following line to the end of that file:
export ENABLE_ACCESSIBILITY=1
Next, add two flags to the $HOME/.config/chromium-flags.conf
file.
--force-renderer-accessibility --enable-caret-browsing
You will need to relog to set the ENABLE_ACCESSIBILITY environment variable. Now Chromium should work with Orca.
Badwolf
The Badwolf browser is based on the WebkitGTK engine, as opposed to Firefox’s Gecko and Google’s Blink engines. It almost works out of the box. It is really fast compared to the other two, but it lacks some features like announcing a page is done loading and it doesn’t appear to support caret browsing, which will cause some other problems. Interesting though for such a young browser to have a minimal level of accessibility so early!
I would be interested where this goes in the future.
P.S.
Somehow I forgot that you would need to setup the dummy display driver to work with the graphics without a display attached.
To do this, install the xf86-video-dummy
pacakge:
# pacman -S xf86-video-dummy
Next, override any /etc/X11/xorg.conf
you may have with this:
Section "Monitor" Identifier "Monitor0" HorizSync 28.0-80.0 VertRefresh 48.0-75.0 # https://arachnoid.com/modelines/ # 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz Modeline "1920x1080_60.00" 172.80 1920 2040 2248 2576 1080 1081 1084 1118 -HSync +Vsync EndSection Section "Device" Identifier "Card0" Driver "dummy" VideoRam 256000 EndSection Section "Screen" DefaultDepth 24 Identifier "Screen0" Device "Card0" Monitor "Monitor0" SubSection "Display" Depth 24 Modes "1920x1080_60.00" EndSubSection EndSection
Now, when you boot, you should head ‘Screen reader on’.
Conclusion
It took a bit of messing around to get this working, but I’m glad I did! Now I can nerd out with another Linux friend and given how well they seem to find problems with accessibility, hopefully a few upstream patches can be made.
Happy hacking, for everyone!


assigned
by Max Kadel at 2022-08-23 14:19:17.assigned
by Christina Chortaria at 2022-08-23 15:35:55.unassigned
by Christina Chortaria at 2022-08-23 15:36:11.unassigned
by Max Kadel at 2022-08-23 15:36:11.assigned
by Christina Chortaria at 2022-08-23 15:36:14.unassigned
by Christina Chortaria at 2022-08-23 15:36:22.@faithc @LynnDurgin Have you had a chance to look at these so we can import them to production and close the ticket?
mentioned
by None at 2022-08-23 14:33:18.subscribed
by None at 2022-08-23 14:33:18.mentioned
by None at 2022-08-23 14:33:18.subscribed
by None at 2022-08-23 14:33:18.Most promising speed so far is achieved by using the search endpoint: @client.get("repositories/#{repo}/top_containers/search", q: resource, timeout: 1000 )
renamed
by Kevin Reiss at 2022-08-23 13:17:02.labeled
by Kevin Reiss at 2022-08-23 13:44:39.This is happening again, see https://app.honeybadger.io/projects/54497/faults/87574003/01GB4H4ZJKWHHXCDYS6V5RGS89?q=occurred.after%3A%227+days+ago%22
Got the last one redeployed.
closed
by None at 2022-08-23 16:51:34.ready_for_review
by Chun Ly at 2022-08-23 15:48:50.review_requested
by Chun Ly at 2022-08-23 15:49:08.closed
by Bess Sadler at 2022-08-23 14:09:38.head_ref_force_pushed
by Bess Sadler at 2022-08-23 20:12:25.Thanks, @kelynch ! ok. Reading through the embargo types and expectations on that page, I see a few things in the document you shared that seem contradictory to above (and I just want to make sure I understand correctly).
Here are the Mudd workstation IPs that can access walk-in theses - https://github.com/PrincetonUniversityLibrary/princeton-5/blob/dataspace-prod/dspace/config/modules/authentication-ip.cfg#L313
Thanks, @kelynch ! ok. Reading through the embargo types and expectations on that page, I see a few things in the document you shared that seem contradictory to above (and I just want to make sure I understand correctly).
Thanks @kelea99! To try to answer your questions in order:
To enhance the reach and utility of this resource, the [library created a digital archive in 2014 (http://undergraduateresearch.princeton.edu/feature-article/senior-thesis-archive-goes-digital)to enable members of the Princeton University community (our students, faculty, staff) and other authorized users of our computing network to access copies of senior theses online.) : This does not sound like Open. This sounds like Princeton University Net ID or getting access to view something via SC?
Sorry, I'm not sure what "SC" refers to here? It sounds like on-campus or VPN access. While most items in DataSpace are only accessible over the VPN or on-campus, there are some that are completely open. Users do not log into DataSpace to access materials.
Online Access: accessible online to authorized users of the Princeton University computing network (as described above). again, this sounds like Princeton Net ID/access via SC.
I think this is VPN or on-campus access as well.
Walk-in Access Only: as you note above. If they want their desktop to hang with Figgy, we had to have Steph A. and her team come in to help with that as well for Special Collections. Has Steph been over there to see what the setup is like?
I'm meeting with Christa today and should be able to get back to you with more info on this!
Thank you, @kelynch ! SC is "Special Collections" in this context and I have edited my original comment accordingly, spelling out the acronym. sorry about that!! :)
mentioned
by Kate Lynch at 2022-08-23 15:01:47.subscribed
by Kate Lynch at 2022-08-23 15:01:47.mentioned
by Kim Leaman at 2022-08-23 15:01:47.subscribed
by Kim Leaman at 2022-08-23 15:01:47.mentioned
by Kate Lynch at 2022-08-23 15:47:15.subscribed
by Kate Lynch at 2022-08-23 15:47:15.labeled
by Kim Leaman at 2022-08-23 15:55:37.labeled
by Trey Pendragon at 2022-08-23 16:09:01.labeled
by Trey Pendragon at 2022-08-23 16:09:01.labeled
by Trey Pendragon at 2022-08-23 16:30:53.unlabeled
by Trey Pendragon at 2022-08-23 16:30:56.Given that the rails time_zone
configuration seems to be partially about converting the zone back and forth during database updates / access, and we won't be storing this with active record, it might be good to be more explicit.
Oh my understanding was the rails time zone defines what the TZ Time.current and such returns, and the AR config was what did the database stuff.
Hm, I see what you mean. That configuration just makes Rails convert anything it sees to the configured time zone? Would this have implications for our other values? It doesn't seem to be a field-specific configuration.
Looks like the global configuration will be disruptive of other date values, including years entered for other properties. We'd have to do a data migration or something? Here's a sample test run showing the way years would behave https://app.circleci.com/pipelines/github/pulibrary/figgy/4628/workflows/05cc6aaf-7070-4bae-becb-a5552c34ac1b/jobs/39488
What do you think we should do?
assigned
by None at 2022-08-23 12:59:06.assigned
by Trey Pendragon at 2022-08-23 22:17:38.This has been partially addressed by #42, see below.
Additional changes need to be added to the custom Health Sciences theme for this journal.
assigned
by Kate Lynch at 2022-08-23 14:04:01.Coverage remained the same at 94.536% when pulling 2182c6f6d1d9bbba140a595799e7614b5f15c483 on sendtodropdown_accessibility into d77e3b4620173c615a9e7729b2d2b95d9cc45aa3 on main.
referenced
by Kevin Reiss at 2022-08-23 16:17:30.merged
by Kevin Reiss at 2022-08-23 16:17:30.closed
by Kevin Reiss at 2022-08-23 16:17:30.head_ref_deleted
by Kevin Reiss at 2022-08-23 16:17:30.closed
by Kevin Reiss at 2022-08-23 16:17:31.referenced
by Kevin Reiss at 2022-08-23 17:03:05.merged
by Kevin Reiss at 2022-08-23 17:03:05.closed
by Kevin Reiss at 2022-08-23 17:03:05.head_ref_deleted
by Kevin Reiss at 2022-08-23 17:03:06.closed
by Kevin Reiss at 2022-08-23 17:03:08.deployed
by None at 2022-08-23 17:06:34.referenced
by Christina Chortaria at 2022-08-23 17:10:04.merged
by Christina Chortaria at 2022-08-23 17:10:04.closed
by Christina Chortaria at 2022-08-23 17:10:04.head_ref_deleted
by Christina Chortaria at 2022-08-23 17:10:04.So, the behavior I'm seeing in development is that, with a bad api key, when I look at the "show" page, the item is marked as "Available", I click the "Request" button and it takes me to the "Help me get it" request page.
With the same object in production, with a good API key, I get the ReCap request page.
With the bad API key, do we want it to go to the ReCap request page, but then send the information to recap problems?
assigned
by Max Kadel at 2022-08-23 15:51:05.We don't have this link any longer.
closed
by Kevin Reiss at 2022-08-23 19:17:12.If I understand this it appears Alma sends back HTML if the CAS patron who logs in does not have a matching record in the system
labeled
by Kevin Reiss at 2022-08-23 19:23:40.Also see https://docs.google.com/document/d/1FYpmZwRNuhnyoG2LfRGVm0nHyOhpgASYhFiV3lwOPXw/edit
renamed
by Hector Correa at 2022-08-23 13:34:43.referenced
by Hector Correa at 2022-08-23 13:47:08.merged
by Hector Correa at 2022-08-23 13:47:08.closed
by Hector Correa at 2022-08-23 13:47:08.head_ref_deleted
by Hector Correa at 2022-08-23 13:47:09.closed
by Bess Sadler at 2022-08-23 14:09:45.closed
by Bess Sadler at 2022-08-23 14:20:33.Done as part of https://github.com/pulibrary/pdc_describe/pull/326
closed
by Hector Correa at 2022-08-23 15:12:07.referenced
by Hector Correa at 2022-08-23 15:12:54.merged
by Hector Correa at 2022-08-23 15:12:54.closed
by Hector Correa at 2022-08-23 15:12:55.head_ref_deleted
by Hector Correa at 2022-08-23 15:12:55.referenced
by Hector Correa at 2022-08-23 15:21:27.merged
by Hector Correa at 2022-08-23 15:21:27.closed
by Hector Correa at 2022-08-23 15:21:27.head_ref_deleted
by Hector Correa at 2022-08-23 15:21:28.referenced
by Kate Lynch at 2022-08-23 16:07:37.merged
by Kate Lynch at 2022-08-23 16:07:37.closed
by Kate Lynch at 2022-08-23 16:07:37.head_ref_deleted
by Kate Lynch at 2022-08-23 16:07:38.assigned
by None at 2022-08-23 17:41:12.We have a record for PPPL on the Collections table. Perhaps we could add a few fields to the Collections table to store this funding information and pull it from here at the time a new dataset for this collection is created.
This is great and it does capture our rationale to go this way.
review_dismissed
by None at 2022-08-23 18:37:09.head_ref_force_pushed
by None at 2022-08-23 18:37:09.convert_to_draft
by James R. Griffin III at 2022-08-23 14:02:17.renamed
by James R. Griffin III at 2022-08-23 14:02:27.deployed
by None at 2022-08-23 19:14:29.head_ref_force_pushed
by James R. Griffin III at 2022-08-23 19:20:43.deployed
by None at 2022-08-23 19:21:07.head_ref_force_pushed
by None at 2022-08-23 20:10:47.ready_for_review
by James R. Griffin III at 2022-08-23 20:14:37.review_requested
by James R. Griffin III at 2022-08-23 20:15:08.deployed
by None at 2022-08-23 20:15:45.referenced
by Hector Correa at 2022-08-23 21:03:26.merged
by Hector Correa at 2022-08-23 21:03:26.closed
by Hector Correa at 2022-08-23 21:03:26.head_ref_deleted
by Hector Correa at 2022-08-23 21:03:27.referenced
by Francis Kayiwa at 2022-08-23 11:27:03.merged
by Francis Kayiwa at 2022-08-23 11:27:03.closed
by Francis Kayiwa at 2022-08-23 11:27:03.head_ref_deleted
by Francis Kayiwa at 2022-08-23 11:27:04.already run on lib-adc1/lib-adc2
referenced
by Christina Chortaria at 2022-08-23 13:11:52.merged
by Christina Chortaria at 2022-08-23 13:11:52.closed
by Christina Chortaria at 2022-08-23 13:11:52.head_ref_deleted
by Christina Chortaria at 2022-08-23 13:11:53.referenced
by Francis Kayiwa at 2022-08-23 18:20:46.merged
by Francis Kayiwa at 2022-08-23 18:20:46.closed
by Francis Kayiwa at 2022-08-23 18:20:46.head_ref_deleted
by Francis Kayiwa at 2022-08-23 18:20:47.referenced
by Francis Kayiwa at 2022-08-23 18:21:13.merged
by Francis Kayiwa at 2022-08-23 18:21:13.closed
by Francis Kayiwa at 2022-08-23 18:21:13.head_ref_deleted
by Francis Kayiwa at 2022-08-23 18:21:16.Remove #3283 changes when this is complete.
Related to #3269.
Add to main README:
- steps when creating a new project
In ADR:
- generally how inventory is structured
- why the directory is called all_projects
head_ref_force_pushed
by Alicia Cozine at 2022-08-23 19:54:13.ready_for_review
by Alicia Cozine at 2022-08-23 20:17:16.referenced
by Christina Chortaria at 2022-08-23 12:05:49.merged
by Christina Chortaria at 2022-08-23 12:05:49.closed
by Christina Chortaria at 2022-08-23 12:05:49.head_ref_deleted
by Christina Chortaria at 2022-08-23 12:05:50.assigned
by Kate Lynch at 2022-08-23 15:30:11.


{% seo %}
{{ site.title | default: site.github.repository_name }}
{{ site.description | default: site.github.project_tagline }}
{% if site.show_downloads %}
Download as .zip
Download as .tar.gz
{% endif %}
View on GitHub
Assignment 1
https://demo.marpi.pl/ocean_desert/
Assignment 2
XTK Cube Madness
Assignment 3
THREE.js Mesh INSANITY
Assignment 4
Vanilla WebGL Game
Assignment 5
Dat GUI and Multiple Frameworks
Assignment 6
Virtual Robot
Assignment 7
Virtual Robot ANIMATED
Assignment 8
Group collision and mesh


Introduction to React
@dothanhlam
About
Lam Do
Ho Chi Minh City, Vietnam
@dothanhlam
http://dothanhlam.wordpress.com
https://github.com/dothanhlam
What is React ?
A library for creating user interfaces
Renders UI and responds to events
Plays the role "V(iew)" in MVC
Fundamentals
Everything is a Component
Build component, not template
not a framework, neither an architecture
Re-render everything on every update
Fast virtual DOM
Build component, not template
Combine DOM generation and display logic
Transform data into interface components
Data can come from anywhere
First glance
var HelloWorld = React.createClass({
render: function() {
return
({'Hello, ' + this.props.name}
);
}
});
React.renderComponent(, document.body);
JSX
- Optional HTML-like markup
- Declarative description of the UI inlined in JS code
- Combines ease-of-use of templates with power of JavaScript
- Preprocessor translates to plain JavaScript:
- On the fly (suitable during development)
- Offline using the React CLI
JSX - a glance
var Header = React.createClass({
render: function () {
return (Employee Directory
);
}
// other
React.DOM.h1({}, 'Employee Directory');
});
Traditional Performance Best Practices
- Avoid expensive DOM operations
- Minimize access to the DOM
- Update elements offline before reinserting into the DOM
- Avoid tweaking layouts in JavaScript
Re-render everything on every update
- Create lightweight description of component UI
- Diff it with the old one
- Compute minimal set of changes to apply to the DOM
- Batch execute all updates
Still confusing?
React builds a new virtual DOM subtree
We just saw the term Virtual DOM
Virtual DOM
It's pure JavaScript, in-memory representation of the DOM
render() fires whenever something changes
React modifies the real DOM to match
Fast, fast and fast
How about actual DOM ?
this.getDOMNode();
We just say virtual DOM fast
DOM is slow
Computes minimal DOM operations
Batched reads and writes for optimal DOM performance
Usually faster than manual DOM operations
Automatic top-level event delegation
Provides hooks for custom update logic
Virtual DOM Benefits
- Clean
Clear, descriptive programming model
- Fast
Optimized DOM updates and less reflows
... more, and more
Run on NodeJS
Java ... via Nashorn JavaScript Engine
Optimizations base on application structure
Testability for free
SVG, VML and ... canvas support
Web worker ?
The Lifecycle
- Initialization
- Props change
- States change
- Component unmount
Initialization
- getDefaultProps
- getInitialState
- componentWillMount
- render
- componentDidMount
Props change
- componentWillReceiveProps
- shouldComponentUpdate
- componentWillUpdate
- render
- componentDidUpdate
State change
- shouldComponentUpdate
- componentWillUpdate
- render
- componentDidUpdate
Unmount
componentWillUnmount
Creating a Component
var Header = React.createClass({
render: function () {
return (
Employee Directory
);
}
});
Composition
var HomePage = React.createClass({
render: function () {
return (
);
}
});
Data Flow
Parent-to-Child
- Properties passed by the parent are available in this.props in the child
- Properties are immutable
Data Flow
Parent
var HomePage = React.createClass({
render: function () {
return (
);
}
});
Data Flow
Child
var Header = React.createClass({
render: function () {
return (
{this.props.title}
);
}
});
Inverse Data Flow
Child-to-Parent
Pass event handler has a property
Inverse Data Flow
Parent
var HomePage = React.createClass({
searchHandler:function(key) {
alert('Search key: ' + key);
},
render: function () {
return (
);
}
});
State
Parent
var HomePage = React.createClass({
getInitialState: function() {
return {employees: []}
},
searchHandler: function(key) {
this.props.service.findByName(key).then(function(result) {
this.setState({searchKey: key, employees: result});
}.bind(this));
},
render: function () {
return (
);
}
});
State
Child
var EmployeeList = React.createClass({
render: function () {
var items = this.props.employees.map(function (employee) {
return (
);
});
return ();
}
});
The key attribute is used to uniquely identify an instance of a component (useful in the diff process)
Credit
This slide is just a folk by @ccoenraets
I made the modification with providing more specific information


Dakshina Foundation Akshi Hall, 723B, Vennila Building, 2nd Floor, Yeso Bunk, Near Anjaneyar Temple ,Peelamedu, Coimbatore – 641 004.
Please feel free to mail us by any time<EMAIL_ADDRESS>Rajashanmugam, +91<PHONE_NUMBER> Dakshina Foundation, 0422 4217222


**HOW TO Visualization Lab Framework**
Sebastian Maisch
Preface
=======
This framework aims to provide an entry point for developing graphical application that will run on the graphics cluster that drives the projection wall in the 'Visualization Lab' at Ulm University.
The lab currently consists of an array of 3x4 Full HD projectors for each eye and can be run in stereo mode (totaling up the number of projectors to 24).
The projectors are driven by currently six PCs with two graphics cards each (we will call these PCs **workers**).
To complete the setup there is one PC that will coordinate the application (called **coordinator** from now on) and is responsible for synchronization.
Despite the direct input at the coordinator the screen of the projection wall has an integrated touch frame.
In the near future we will also support tracked Steam VR controllers for input.
In this document we want to describe how to use this framework for developing applications.
This is ment to be a more or less complete documentation but you will probably not need most of the stuff described here when using the framework at home.
Currently this framework can be used in several different configurations which determine the need for external libraries.
The different options are:
Touch support
: Determines if touch support (implemented by TUIO) is included.
Stand alone mode
: The most simple version of this application. This will run the application as a desktop only application but does not rely on external libraries.
Network mode
: This enables the framework to run on multiple PCs. Alternatively you can also run multiple instances on a single PC for testing purposes. This mode requires SGCT as an external library.
Calibrated Network mode
: This mode is the one that is used to run the application on the projection wall. It has all features of *Network mode* and additionally uses calibration information to correctly place the output and do color calibration.
Additional to this document there is the [doxygen documentation](./html/index.html) (if you generated it).
Building the Framework
======================
The framework relies on [CMake](https://cmake.org/) as a build system (version 3.9 is required).
The build is regularly tested with Visual Studio (we currently use version 15.7) but should also run with Clang or GCC for Linux and MacOS (if this is not the case feel free to do a bug report).
Dependencies
------------
We try to keep this software self contained.
This means we will try to have all of the dependencies needed directly included.
We achieve this by using [git submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules).
So if you are cloning this as a git repository make sure to initialize submodules recursively with
~~~ console
git submodule update --init --recursive
~~~
For **Network mode** and **Calibrated Network mode** you will need [SGCT](https://github.com/opensgct/sgct) as an additional external dependency.
The complete list of dependencies we have is:
- [assimp](https://github.com/assimp/assimp): submodule (loading of triangle meshes)
- [g3log](https://github.com/KjellKod/g3log): submodule (asynchronous logging)
- [glfw](https://github.com/glfw/glfw): submodule, only in **Stand alone mode** otherwise part of [SGCT](https://github.com/opensgct/sgct).
- [glm](https://github.com/g-truc/glm): submodule, only in **Stand alone mode** otherwise part of [SGCT](https://github.com/opensgct/sgct).
- [imgui](https://github.com/ocornut/imgui): submodule (GUI)
- [stb](https://github.com/nothings/stb): submodule (loading of images)
- [tuio](https://github.com/viscom-ulm/TUIO11_CPP): submodule, only for **Touch support**
- [SGCT](https://github.com/opensgct/sgct): external, needed for **Network mode** and **Calibrated Network mode**
Using CMake
-----------
To create the project files for your local compiler and IDE we use [CMake](https://cmake.org/) (version 3.9 is required).
For easier use we recommend the CMake GUI that is (at least on Windows environments) shipped with CMake.
To use CMake from the command line use
~~~ console
mkdir build
cd build
cmake ..
~~~
from a console inside the source folder.
With
~~~ console
cmake -D := ..
~~~
you can specify different variables for the build as described in Sec. [CMake Parameters].
To create projects for a specific IDE (e.g. **Xcode**)
~~~
cmake -G Xcode ..
~~~
In the GUI you need to set the source folder to where you cloned the source code to (there is a `CMakeLists.txt` file in the directory).
Set the binary / build directory to a subfolder of the source folder (that does not need to exist yet).
We recommend calling the folder `build`.
After clicking *Configure* CMake will most likely report an error.
This is because by default usage of SGCT is enabled.
To fix this either disable SGCT (uncheck the `VISCOM_USE_SGCT` parameter) or provide the correct include and library paths (see Sec. [Automatically Finding the SGCT Library]).
There are several other parameters (check the *Grouped* checkbox to get a better overview) and the ones that have an influence on the framework start with `SGCT` or `VISCOM`.
An overview of the parameters is given in Table [cmakeparams].
After setting the parameters correctly press *Configure* and *Generate*.
### CMake Parameters
There are several parameters for the build.
Most of them concern other libraries and will not be described here (there is usually no need to change them).
The most important parameters are listed in Table [cmakeparams].
Other parameters should not be changed.
Parameter | Type | Description
-------------------------|--------|------------
`SGCT_DEBUG_LIBRARY` | PATH | Path to the debug library of SGCT (see Sec. [Automatically Finding the SGCT Library])
`SGCT_INCLUDE_DIRECTORY` | PATH | Include path of SGCT (see Sec. [Automatically Finding the SGCT Library])
`SGCT_RELEASE_LIBRARY` | PATH | Path to the release library of SGCT (see Sec. [Automatically Finding the SGCT Library])
`VISCOM_APP_NAME` | STRING | The name of the application (see Sec. [Creating Your Own Application])
`VISCOM_CONFIG_NAME` | STRING | The name of the configuration to use (see Sec. [Screen Configurations])
`VISCOM_OPENGL_PROFILE` | STRING | The OpenGL profile your application uses.
`VISCOM_LOCAL_ONLY` | BOOL | If this flag ist set , the **Calibrated Network mode** is *disabled*
`VISCOM_USE_SGCT` | BOOL | Switch between **(Calibrated) Network mode** (if set) and **Stand alone mode** (if unset).
`VISCOM_USE_TUIO` | BOOL | Switch for **Touch support**.
[Table [cmakeparams]: Parameters and types to influence the build.]
The `VISCOM_USE_TUIO` flag is independent of other parameter and enables **TUIO** support.
The other two flags define the options described in Sec. [Preface].
An overview how these flags need to be set for each option is given in Table [cmakeparamoptions].
Option | `VISCOM_LOCAL_ONLY` | `VISCOM_USE_SGCT`
----------------------------|---------------------|-----------------
**Stand alone mode** | x |
**Network mode** | x | x
**Calibrated Network mode** | | x
[Table [cmakeparamoptions]: Overview how the different build flags influence the framework options.]
Automatically Finding the SGCT Library
--------------------------------------
The three SGCT paths can be set either by hand or by an environment variable.
When downloading the SGCT binaries (or building SGCT from source) you will get a folder with (at least) the subfolders:
- `include`
- `lib`
The include folder will be the value to set for `SGCT_INCLUDE_DIRECTORY`, the libraries will be in the `lib` folder.
When setting the environment variable **`SGCT_ROOT_DIR`** to this folder the three build parameters will be set automatically.
Screen Configurations
---------------------
When running in **Stand alone mode** the screen configuration is very limited.
In **Network mode** and **Calibrated Network mode** the screen configurations are managed by SGCT.
We have several existing configurations that should cover most usecases.
To choose the configuration you need to set the `VISCOM_CONFIG_NAME` build parameter.
The most simple configuration (`single`) is a single screen running on a single local PC.
The next more complicated configuration (`localms`) is two windows running on different machines.
Its usecase is to test your application in a network context while still only needing a single machine.
We explain in Sec. [Running an Application] how to start several instances of the application locally using this configuration.
Furthermore there are configurations that will work in the Visualization Lab.
They run on 7 machines (1 coordinator, 6 workers) with several windows on each machine.
The number of windows depends on whether stereo mode or mono mode is used.
These configurations are not part of this document an described in the HOWTO of the lab.
Running an Application
======================
To find all the correct paths the final application expects there to be a configuration file containing this and other information.
This file is generated by CMake and for single screen configurations can be ignored (the correct one will be selected automatically).
When running the application on the cluster this is also the case (assumed you installed the application correctly, which is also done by CMake).
The default configuration is `framework.cfg`
When running two different nodes locally you need to pass each node the correct configuration file.
The coordinator node uses the *standard* configuration file and does not need any special attention.
~~~ console
ProjectorFramework.exe
~~~
The worker node needs to be started with the `framework_local_worker.cfg` configuration file as parameter.
~~~ console
ProjectorFramework.exe framework_local_worker.cfg
~~~
In Visual Studio we also added a new project configuration (*DebugWorker*) to simplify debugging a local worker node.
To do that you need to tell Visual Studio to start this configuration always with the `framework_local_worker.cfg` parameter.
Creating Your Own Application
=============================
To create your own application using the *Visualization Lab Framework* there are two possibilitys.
You can either fork the existing framework demo application (https://github.com/viscom-ulm/viscom_framework) or write your own one.
We recommend forking as a lot of things are done for you then but we will describe writing your own one also.
Forking the Demo Application
----------------------------
- Go to https://github.com/viscom-ulm/viscom_framework .
- Download the `.zip` file there or use git to pull the repository.
- Done.
- Alternatively: Push the Demo to your own repository.
You can also use the forking provided by github and other services of course.
If you need to modify the basic parts of your application the next section might help you to do that.
Writing your own Application
----------------------------
Writing your own application can be divided in several parts.
First you need a minimal CMake file that uses the `VISCOMCore` library and generates the configuration file from a template.
Next you need to create a `main` function to start the program.
As a last step you need to implement the application node which will be explained in more detail in Sec. [Programming the Framework].
### CMake and Configuration File
A minimal working CMake file will look like this:
~~~ cmake
cmake_minimum_required(VERSION 3.9)
SET(APP_NAME ProjectorFramework)
PROJECT(${APP_NAME})
include(${PROJECT_SOURCE_DIR}/extern/fwcore/CMake_core.cmake)
set(VISCOM_CONFIG_NAME "single" CACHE STRING
"Name/directory of the configuration files to be used.")
set(VISCOM_VIRTUAL_SCREEN_X 1920 CACHE INTEGER
"Virtual screen size in x direction.")
set(VISCOM_VIRTUAL_SCREEN_Y 1080 CACHE INTEGER
"Virtual screen size in y direction.")
file(GLOB_RECURSE SHADER_FILES ${PROJECT_SOURCE_DIR}/resources/shader/*.*)
file(GLOB_RECURSE SRC_FILES
${PROJECT_SOURCE_DIR}/src/app/*.h
${PROJECT_SOURCE_DIR}/src/app/*.cpp)
file(GLOB SRC_FILES_ROOT
${PROJECT_SOURCE_DIR}/src/*.h
${PROJECT_SOURCE_DIR}/src/*.cpp)
list(APPEND SRC_FILES ${SRC_FILES_ROOT})
source_group("shader" FILES ${SHADER_FILES})
add_executable(${APP_NAME} ${SRC_FILES} ${SHADER_FILES})
set_target_properties(${APP_NAME} PROPERTIES OUTPUT_NAME ${VISCOM_APP_NAME})
set_property(TARGET ${APP_NAME} PROPERTY CXX_STANDARD 17)
target_include_directories(${APP_NAME} PRIVATE src)
target_link_libraries(${APP_NAME} VISCOMCore)
set(VISCOM_CONFIG_BASE_DIR "../")
set(VISCOM_CONFIG_PROGRAM_PROPERTIES
"../config/${VISCOM_CONFIG_NAME}/propertiesPrecompute.xml")
set(VISCOM_CONFIG_SGCT_CONFIG
"../data/${VISCOM_CONFIG_NAME}/${VISCOM_CONFIG_NAME}.xml")
set(VISCOM_CONFIG_PROJECTOR_DATA "../data/${VISCOM_CONFIG_NAME}/ProjectorData.xml")
set(VISCOM_CONFIG_LOCAL "0")
configure_file("framework.cfg" "framework.cfg")
set(VISCOM_CONFIG_LOCAL "1 --slave")
configure_file("framework.cfg" "framework_local_slave.cfg")
set(VISCOM_CONFIG_BASE_DIR "./")
set(VISCOM_CONFIG_PROGRAM_PROPERTIES
"../../calibration/config/${VISCOM_CONFIG_NAME}/propertiesPrecompute.xml")
set(VISCOM_CONFIG_SGCT_CONFIG
"../../calibration/data/${VISCOM_CONFIG_NAME}/${VISCOM_CONFIG_NAME}.xml")
set(VISCOM_CONFIG_PROJECTOR_DATA
"../../calibration/data/${VISCOM_CONFIG_NAME}/ProjectorData.xml")
set(VISCOM_CONFIG_LOCAL "-1")
configure_file("framework.cfg" "framework_install.cfg")
copy_core_lib_dlls(${APP_NAME})
install(TARGETS ${APP_NAME} RUNTIME DESTINATION
${VISCOM_INSTALL_BASE_PATH}/${VISCOM_APP_NAME})
install(DIRECTORY resources/ DESTINATION
${VISCOM_INSTALL_BASE_PATH}/${VISCOM_APP_NAME}/resources)
install(FILES ${CMAKE_BINARY_DIR}/framework_install.cfg DESTINATION
${VISCOM_INSTALL_BASE_PATH}/${VISCOM_APP_NAME} RENAME framework.cfg)
~~~
Here you can change the name of the Program (currently `ProjectorFramework`) to to any other name.
The configuration file should be this:
~~~ none
BASE_DIR= ${VISCOM_CONFIG_BASE_DIR}
VISCOM_CONFIG= ${VISCOM_CONFIG_NAME}
PROGRAM_PROPERTIES= ${VISCOM_CONFIG_PROGRAM_PROPERTIES}
SGCT_CONFIG= ${VISCOM_CONFIG_SGCT_CONFIG}
PROJECTOR_DATA= ${VISCOM_CONFIG_PROJECTOR_DATA}
LOCAL= ${VISCOM_CONFIG_LOCAL}
TUIO_PORT= ${VISCOM_TUIO_PORT}
VIRTUAL_SCREEN_X= ${VISCOM_VIRTUAL_SCREEN_X}
VIRTUAL_SCREEN_Y= ${VISCOM_VIRTUAL_SCREEN_Y}
NEAR_PLANE_SIZE_X= ${VISCOM_NEAR_PLANE_SIZE_X}
NEAR_PLANE_SIZE_Y= ${VISCOM_NEAR_PLANE_SIZE_Y}
OPENGL_PROFILE= ${VISCOM_OPENGL_PROFILE}
~~~
### Main Function
The `main` function needs to take care of setting up the logging, load the configuration file, initialize and start the application.
Logging can be set up like in Listing [logger].
You can modify which logging levels you want to enable or which sink you want to use.
There is the g3log default sink available and one implemented by the framework.
You can also implement your own sinks or use one provided by [g3sinks](https://github.com/KjellKod/g3sinks).
~~~
int main(int argc, char** argv) {
const std::string directory = "./";
const std::string name = "viscomlabfw.log";
auto worker = g3::LogWorker::createLogWorker();
auto handle = worker->addSink(std::make_unique(name,
directory, false), &vku::FileSink::fileWrite);
if constexpr (viscom::DEBUG_MODE) g3::log_levels::enable(WARNING);
else g3::log_levels::disable(WARNING);
initializeLogging(worker.get());
...
}
~~~
[Listing [logger]: Example of how to initialize the logging.]
The next step would be to load the configuration.
We already provide a loader (`viscom::LoadConfiguration(...)`) for that which you should use.
It takes the filename of the configuration file to load.
Listing [config] shows how to load the configuration provided by the command line or alternatively using the default configuration file.
~~~
int main(int argc, char** argv) {
...
viscom::FWConfiguration config;
if (argc > 1) config = viscom::LoadConfiguration(argv[1]);
else config = viscom::LoadConfiguration("framework.cfg");
...
}
~~~
[Listing [config]: Example of how to load the configuration.]
The last thing needed to run the application is to initialize the nodes and start the main loop.
A node can be initialized using the `Application_Init(...)` function.
It takes as parameters the configuration loaded before and two `std::function`s to create your implementations of `viscom::ApplicationNodeBase` for the coordinator and workers.
These two do **not** necessaryly need to differ.
Listing [nodeinit] gives an example of how to initialize the nodes.
In this case we use two different implementations for coordinator and workers but they could be the same.
In Sec. [Programming the Framework] we will explain how to implement the nodes.
The main loop is hidden away in our framework and is started by calling the `Render` method of the application created.
~~~
int main(int argc, char** argv) {
...
auto appNode = Application_Init(config,
[](viscom::ApplicationNodeInternal* node)
{ return std::make_unique(node); },
[](viscom::ApplicationNodeInternal* node)
{ return std::make_unique(node); }
);
// Main loop
appNode->Render();
...
}
~~~
[Listing [nodeinit]: Example of how to initialize the nodes.]
Programming the Framework
=========================
After creating your application in Sec. [Writing your own Application] you need to implement your nodes.
This is where everything in your application happends so we put it in an extra section.
All nodes need to derive from `ApplicationNodeBase`.
This is a base class that on one hand provides all entry points your application can hook into as `virtual` methods while also providing access to the frameworks internal information.
There is basically three ways to create these nodes that might make sense in some case:
- **All Nodes use the same class**: In this case all nodes will do the same calculations and in the end display the same image (or at least a part of the same image).
- **Coordinator and worker nodes have completely separate classes**: The total opposite of the last possibility.
In this case the coordinator will show something *unrelated* to the worker nodes.
You can still share information by using synchonization features but no code is shared.
- **Coordinator and worker nodes have classes that share a common base class**: This is probably the most common usecase and also the one provided by default.
In this case the shared part can be implemented in the common base class (that of course needs to implement `ApplicationNodeBase`) and specific parts can be implemented in they derived classes.
This allows for example to show GUI overlays on the coordinator node that are not shown on the workers. Figure [nodediagram] shows the hierarchy of this as implemented in our default implementation.
***********************************************
* +-----------------------+ *
* | ApplicationNodeBase | *
* +-----------------------+ *
* ^ *
* | *
* +---------------------------------+ *
* | ApplicationNodeImplementation | *
* +---------------------------------+ *
* ^ *
* | *
* +-----------+---------+ *
* | | *
* +-------------------+ +--------------+ *
* | CoordinatorNode | | WorkerNode | *
* +-------------------+ +--------------+ *
***********************************************
[Figure [nodediagram]: Class diagram of coordinator and worker nodes sharing the same base class.]
[`ApplicationNodeBase`](html/classviscom_1_1_application_node_base.html) has 22 `virtual` methods that can (but do not need to) be overriden to add functionality to your application nodes.
These methods can be divided into four groups:
- Application workflow
- Input
- Rendering
- Data transfer / synchronization
Application workflow
--------------------
The `virtual` methods to hook into the application workflow are
~~~
virtual void PreWindow();
virtual void InitOpenGL();
virtual void UpdateFrame(double currentTime, double elapsedTime);
virtual void CleanUp();
~~~
These methods define the application's basic workflow. They can be used to initialize the framework, set up objects and data, update these each frame and clean them up when exiting the application.
~~~
virtual bool KeyboardCallback(int key, int scancode, int action, int mods);
virtual bool CharCallback(unsigned int character, int mods);
virtual bool MouseButtonCallback(int button, int action);
virtual bool MousePosCallback(double x, double y);
virtual bool MouseScrollCallback(double xoffset, double yoffset);
virtual bool AddTuioCursor(TUIO::TuioCursor *tcur);
virtual bool UpdateTuioCursor(TUIO::TuioCursor *tcur);
virtual bool RemoveTuioCursor(TUIO::TuioCursor *tcur);
~~~
The methods in this group handle all user input. There is a different method for each type of keyboard or mouse event which can be implemented to controll the application.
Additionally, the Tuio functions can be used for touch screen interfaces.
~~~
virtual void ClearBuffer(FrameBuffer& fbo);
virtual void DrawFrame(FrameBuffer& fbo);
virtual void Draw2D(FrameBuffer& fbo);
~~~
The methods in this group provide render functionality such as clearing frame buffers and drawing meshes and 2D elements to the screen.
They can be called multiple times per frame and are also used for off screen rendering.
~~~
virtual bool DataTransferCallback(void* receivedData, int receivedLength, std::uint16_t packageID, int clientID);
virtual bool DataAcknowledgeCallback(std::uint16_t packageID, int clientID);
virtual bool DataTransferStatusCallback(bool connected, int clientID);
virtual void PreSync();
virtual void UpdateSyncedInfo();
virtual void EncodeData();
virtual void DecodeData();
~~~
These methods can be used to transfer data, share resources between nodes and ensure the applications's synchronization.
General Concepts of the `VISCOMCore` Library
============================================
Description of Important Classes and Methods of the `VISCOMCore` Library
========================================================================
## [ApplicationNodeBase](html/classviscom_1_1_application_node_base.html)
This class is the base for all nodes and provides the following important methods:
- [GetGPUProgramManager](html/classviscom_1_1_application_node_base.html#aab223b9a84069df9cdbbbf3fe2458f8a)
- [GetTextureManager](html/classviscom_1_1_application_node_base.html#af8367eb3a783f5f9393c785b5c3a95b0)
- [GetMeshManager](html/classviscom_1_1_application_node_base.html#a1e1e4dcc106c4a2ea3a56955a613dc4e)
These three methods are used to retrieve the framework's resource managers.
- [GetCamera](html/classviscom_1_1_application_node_base.html#a8440fa5875bfc1864abaa9c139e60672)
With this method you get the camera of the scene.
- [CreateOffscreenBuffers](html/classviscom_1_1_application_node_base.html#a629a016f82e4f5bf9ff3f118b7eac2bd)
- [SelectOffscreenBuffer](html/classviscom_1_1_application_node_base.html#a614fbfc2a7d7fad8442d48b3ea820188)
With these two methods frame buffers for offscreen rendering can be created and retrieved.
The first method yields a vector holding one frame buffer for each display. The second method returns the frame buffer for the current display.
- [CreateFullscreenQuad](html/classviscom_1_1_application_node_base.html#a086f9629c2ec292d9a67ff2e116eec6c)
This method creates a fullscreen quad for rendering.
## [FrameBuffer](html/classviscom_1_1_frame_buffer.html)
Frame buffers are used as render targets and can hold render buffers and texture buffers. The number and type of the used buffers are defined by descriptor objects.
## [Mesh](html/classviscom_1_1_mesh.html)
This class represents a mesh holding information such as vertices, materials and animations.
## [MeshRenderable](html/classviscom_1_1_mesh_renderable.html)
This class is a basic implementation of a mesh renderable and provides functionalities to render a mesh with a specific shader.
## [Animation](html/classviscom_1_1_animation.html)
An animation holds all the keyframe data for each bone of an animated mesh.
## [SceneMeshNode](html/classviscom_1_1_scene_mesh_node.html)
This class represents a node in the scene hierarchy and can hold meshes.
## [SubMesh](html/classviscom_1_1_sub_mesh.html)
Sub meshes define a group of geometry and represent a part of a mesh.
## [Texture](html/classviscom_1_1_texture.html)
The texture class is a wrapper for the OpneGL texture and holds methods to load image files from the hard drive.
## [CameraBase](html/classviscom_1_1_camera_base.html)
This is the base class for the framework's camera.
## [ArcballCamera](html/classviscom_1_1_arcball_camera.html)
The arcball camera is a simple camera implementation using an arcball.
## [FreeCamera](html/classviscom_1_1_free_camera.html)
The free camera is a simple implementation for a freely movable camera.
## [CameraHelper](html/classviscom_1_1_camera_helper.html)
This class is a helper class to realize camera movement.
## [GPUProgram](html/classviscom_1_1_g_p_u_program.html)
This class handles OpenGL shader objects and uniforms.
## [FullscreenQuad](html/classviscom_1_1_fullscreen_quad.html)
This class realizes a renderable quad filling the whole screen as used in deferred shading or various post effects.
## Viscom::Math
There are several mathematical objects and shapes implemented such as axis aligned bounding boxes ([AABB](html/structviscom_1_1math_1_1_a_a_b_b.html)) and primitives like lines, triangles and frustums.
The library also holds various methods for intersection tests.


starRepaid
loan completely
lensPaid
monthly installment
lensPaid
below monthly installment
| LoanId |
Payment status |
Amount paid |
Loan Amount |
Date |
Due Date |
| 5 |
lens |
$200 |
$12600 |
24th December 2018 |
24th June 2019 |
| 5 |
lens |
$150 |
$12000 |
24th January 2019 |
24th June 2019 |
| 5 |
lens |
$150 |
$12600 |
24th Febuaray 2019 |
24th June 2019 |
| 5 |
lens |
$200 |
$12000 |
24th March 2018 |
24th June 2019 |
| 5 |
lens |
$150 |
$12000 |
24th April 2019 |
24th June 2019 |
| 5 |
star |
$410 |
$12000 |
24th May 2019 |
24th June 2019 |
| 5 |
lens |
$200 |
$12600 |
24th December 2018 |
24th June 2019 |
| 5 |
lens |
$150 |
$12000 |
24th January 2019 |
24th June 2019 |
| 5 |
lens |
$200 |
$12600 |
24th December 2018 |
24th June 2019 |
| 5 |
lens |
$150 |
$12000 |
24th January 2019 |
24th June 2019 |
| 5 |
lens |
$200 |
$12600 |
24th December 2018 |
24th June 2019 |
| 5 |
lens |
$150 |
$12000 |
24th January 2019 |
24th June 2019 |


Product Medical devices, Medicines, Masks
Believe in Obatin for Medicine.
We are your #1 ranked pharmacy with free same day delivery and great care. Our pharmacy is a trusted pharmacy in this area.
Product Medical devices, Medicines, Masks
We are your #1 ranked pharmacy with free same day delivery and great care. Our pharmacy is a trusted pharmacy in this area.
Create an account to transfer your existing prescription
Create an account to transfer your existing prescription
Create an account to transfer your existing prescription
4 Places East Java, Central Java, Jakarta, Bali
On the flip side, Hill is grateful that their belated diagnosis allowed them to live care-free. It allowed them to have the time to indulge in adventures like bungee jumping.
Depansar, Kuta, Jimbaran
Yogyakarta, Solo, Samarang
East Jakarta, Central Jakarta, South Jakarta
Surabaya, Malang, Kediri, Pasuruan
Lets to know more about Obatin
On the flip side, Hill is grateful that their belated diagnosis allowed them to live care-free.


The purpose of this test is to measure pipe bandwidth.
The first test bw_pipe - measures pipe bandwidth between two processes moving 50MB of data through the pipe in 64KB chunks.
The second test bw_unix - measures how fast a parent process can read data through a pipe from a forked child process.
Warning:
If your running on a Beaglebone White/Black please plug in the 5V Power Supply.
Otherwise, the board may shutdown or reboot due to using to much current from USB.


TP Mezembe president Moise Katumbi has been named as the World Football Club Association (WFCA) Vice President
President of Congolese giants TP Mezembe Moise Katumbi has been named as vice President of the World Football Club Association by FIFA.
The World Football Club Association will champion the new FIFA Club World Cup starting in June 2021.
Moise Katumbi will be vice to Real Madrid president Florentino Pérez.
After the approval of the new FIFA Club World Cup, which will take place in China in 2021, clubs from six continents gathered at FIFA headquarters in Zurich to discuss this new competition and several topics. 'common interest.
The clubs participating in this meeting also decided to create the World Football Club Association (WFCA). Among them, the TP Mazembe of Moise Katumbi.
The founding members agreed that WFCA was the appropriate platform to channel dialogue between clubs around the world and FIFA.
The first goal of this association is to ensure that the FIFA Club World Cup is an event that fans around the world will be able to watch, presenting the best football with the best teams competing for the world's only football trophy. club.
In addition, the WFCA will also be a way for clubs to solve the problems they face and to have a constructive exchange with FIFA on issues of particular interest to them.
"I am delighted that clubs from around the world are here today and have decided to create the World Football Club Association. This new association will provide FIFA with a credible and serious interlocutor to discuss all club-related issues, starting with the FIFA Club World Cup in 2021. This tournament must be a driving force for the development of football in clubs. from around the world that the present wants to achieve with FIFA today. We are looking forward to an excellent cooperation with FIFA to move club football to a higher level, "said Florentino Perez.


Police hunt for two men armed with a firearm and a knife after car theft
The men have been described as wearing dark clothing with their faces covered
by Gemma ToulsonPolice have launched an appeal after two armed men stole a vehicle in Huthwaite.
Officers were called to Woodland Avenue at around 11.20pm on Tuesday, November 19 following reports of a theft of a car.
Two men were who reported to be armed with a firearm and a knife stole the vehicle.
The men have been described as wearing dark clothing with their faces covered.
No-one was injured in the incident.
A spokesman for the force said: "Were you in the area at the time? Did you witness the incident? Have you got any dashcam footage?
"If you can help or have any information please ring Nottinghamshire Police on 101, quoting incident number 959 of 19 November 2019."
To receive one WhatsApp message a day with the main headlines, as well as breaking news alerts, text NEWS to 07790 586202. Then add the number to your phone contacts book as 'Nottingham Post'. Your phone number won't be shared with other members of the group.


{% extends 'base.html' %} {% load static %} {% block head_title %}Home{% endblock %} {% block nosubheader %} {% endblock nosubheader %} {% block title %}{% endblock title %} {% block hero_subheader %}
There are no competitions.
{% else %} {% for competition in latest_competitions %} {% include "web/competition_latest.html" with competition=competition %} {% endfor %} {% endif %}There are no competitions.
{% else %} {% for competition in featured_competitions %} {% include "web/competition_latest.html" with competition=competition %} {% endfor %} {% endif %}


Welcome to
Serverless Cloud
The way serverless was meant to be
This is a sample
Serverless TODO app.
It uses Serverless Data, an API, a scheduled task, and a little bit of
React to implement a simple TODO application.
Please visit the full documentation for more information:
https://serverless.github.io/cloud/


{% extends "layout.html" %} {% block body %}
HopCity finds neighborhoods that match your current lifestyle in a new city.
Learn more