Working on Digital Contents: A Semantic Vision, Conference "Open Platforms for Humanities, Cortona, Palazzone della Scuola Normale Superiore, 17 January 2013, http://openplatformsforhumanities.org
How Much to Semanticize? Looking at the future of Library Data and the Semant...Jenn Riley
Riley, Jenn. “How Much to Semanticize? Looking at the future of Library Data and the Semantic Web.” University of Illinois at Urbana Champaign Library Colloquium Series, April 21, 2010.
A detailed briefing on the current position of the library catalog and its prospects in the age of internet discovery and changing preferences for information seeking. Based on the speaker's extensive research and writings abou the catalog and metadata at Cornell University Library and for the Library of Congress. Prepared for the "New Age of Discovery" Institute sponsored by ASERL and hosted by Auburn University Libraries. Presented July 19, 2007. Includes speaker notes.
Working on Digital Contents: A Semantic Vision, Conference "Open Platforms for Humanities, Cortona, Palazzone della Scuola Normale Superiore, 17 January 2013, http://openplatformsforhumanities.org
How Much to Semanticize? Looking at the future of Library Data and the Semant...Jenn Riley
Riley, Jenn. “How Much to Semanticize? Looking at the future of Library Data and the Semantic Web.” University of Illinois at Urbana Champaign Library Colloquium Series, April 21, 2010.
A detailed briefing on the current position of the library catalog and its prospects in the age of internet discovery and changing preferences for information seeking. Based on the speaker's extensive research and writings abou the catalog and metadata at Cornell University Library and for the Library of Congress. Prepared for the "New Age of Discovery" Institute sponsored by ASERL and hosted by Auburn University Libraries. Presented July 19, 2007. Includes speaker notes.
Efektywne pozycjonowanie | 6 kroków na szczyty wyszukiwarekMartyna Zastrożna
Materiały ze szkolenia dla Explanator.
Ostatni rok to okres wielkich zmian (m.in. algorytm Hummingbird, gwałtowny wzrost szyfrowanych słów kluczowych), w wyniku których wiele osób zajmujących się SEO musi całkowicie przebudować swoją strategię działania.
Audyt on-page SEO - co powinien zawierać i z jakich narzędzi warto korzystaćSzymon Słowik
Prezentacja z I. edycji SEO barcamp Katowice organizowanej przez Linkhouse. Temat prezentacji dotyczył podejścia do przeprowadzania audytów SEO. Omawiałem zarówno kwestie narzędzi, technikaliów, metodologii, jak i celów, jakie powinny przyświecać specjaliście audytującemu serwis.
Techniczne aspekty SEO w wyszukiwarkach internetowych Czym są i jak tworzyć treści SEO friendly?
Google Analytics - kopalnia wiedzy o zachowaniach Internautów
Jak budować widoczność w wynikach wyszukiwania w sklepach internetowych? Jakie strategie SEO pomogą w podnoszeniu widoczności? Jak optymalnie wykorzystywać budżet crawlowania? Badania dotyczące wpływu wielkości sklepów na widoczność.
Wojciech Szymański - Kierownik Działu Promocji w Wyszukiwarkach w Ideo Sp. z o.o, ekspert ds. e-marketingu. Z branżą internetową związany od 2000 r. Posiada bogate doświadczenie związane z e-marketingiem ze szczególnym uwzględnieniem wyszukiwarek internetowych. Od 2006 roku Kierownik Działu Promocji w Wyszukiwarkach w Ideo Sp. z o.o, gdzie prowadził działania promocyjne dla takich firm jak BPH TFI SA, Zelmer S.A., SportLive24 S.A., GlaxoSmithKline czy Ceramika Tubądzin. Specjalizuje się również w zakresie usability oraz propaguje szeroko rozumiane zagadnienia findability. Kwalifikowany specjalista Google Advertising Professional. Autor audytów użyteczności oraz analiz biznesowych. Prowadził wiele szkoleń związanych z zagadnieniami e-marketingu. Wykłada na Studiach Podyplomowych w Wyższej Szkole Europejskiej w Krakowie.
Prezentacja artykułu z konferencji Infobazy 2014, prezentującego prace realizowane w projekcie MARKOS. Celem projektu MARKOS jest opracowanie koncepcji i rozwój sieciowej usługi umożliwiającej wyszukanie w globalnej przestrzeni projektów Open Source komponentów, które w sposób optymalny spełniają kryteria wyspecyfikowane przez użytkownika systemu. Dzięki opracowanemu systemowi twórcy i użytkownicy otwartego oprogramowania (ang. Open Source Software, OSS) będą mogli w łatwy i automatyczny sposób analizować zależności pomiędzy użytymi komponentami OSS, biorąc pod uwagę funkcjonalne, strukturalne i licencyjne aspekty kodu źródłowego.
Wynikiem projektu będzie prototyp usługi uruchomionej w Internecie przez partnerów projektu i udostępnionej poprzez zestaw interaktywnych aplikacji, zarówno przez graficzny interfejs użytkownika, jak i semantyczny punkt dostępu do danych w modelu linked data. Wspomniana powyżej usługa będzie realizowana za pomocą zestawu wewnętrznych komponentów systemu MARKOS, których zadaniem będzie wielokontekstowa analiza informacji dostępnych w sieci oraz ich przetwarzanie i przechowywanie w wewnętrznym repozytorium semantycznym systemu.
System MARKOS będzie oferował użytkownikom możliwość semantycznego przeszukiwania i przeglądania komponentów i bibliotek oraz nawigowania po strukturze kodu na wysokim poziomie abstrakcji. Ułatwi to, w szczególności architektom i analitykom, wyszukanie komponentu, który spełnia funkcjonalne, techniczne i prawne wymagania systemu. Z kolei programistom pozwoli lepiej zrozumieć dostępne interfejsy i wewnętrzne zależności oprogramowania. Dodatkowo system MARKOS będzie brał pod uwagę również aspekty integracji kodu, pokazując i wykorzystując zależności i związki między komponentami oprogramowania z różnych projektów. Dzięki temu w systemie MARKOS dostępny będzie zintegrowany globalny widok na istniejące oprogramowanie Open Source. MARKOS wykorzysta również zależności między komponentami do bardziej efektywnej i trafnej analizy kompatybilności licencji, dostarczając podstaw argumentacji prawnej i rozwiązywania konfliktów. W celu ułatwienia współpracy między różnymi projektami, MARKOS dostarczy też narzędzi umożliwiających powiadamianie o istotnych zmianach w komponentach pomiędzy zależnymi projektami. Oczekuje się w związku z powyższym, że system MARKOS ze swoją funkcjonalnością w kontekście globalnym ułatwi rozwój oprogramowania w oparciu o paradygmat Open Source wnosząc swój wkład w globalną społeczność.
Wykorzystaj nowoczesne narzędzia w swoich projektach internetowych
* Projektuj własne szablony
* Twórz aplikacje wielojęzyczne
* Popraw wydajność witryn internetowych
Współczesne witryny WWW to nie tylko prezentacje podstawowych informacji o firmach. W sieci można znaleźć setki sklepów internetowych, portali informacyjnych i innych serwisów będących samodzielnymi przedsięwzięciami. Coraz częściej strony WWW wykorzystywane są również jako interfejs użytkownika dla aplikacji. Tak rozbudowane projekty internetowe są realizowane przez zespoły składające się z programistów odpowiedzialnych za "zaplecze" serwisu i projektantów, których zadaniem jest opracowanie wyglądu witryny. W takich przypadkach niezbędny jest mechanizm pozwalający na oddzielenie treści i logiki stron WWW od ich prezentacji. Do tego celu stosowane są narzędzia umożliwiające skonstruowanie warstwy prezentacyjnej serwisu WWW w oparciu o szablony. PHP, jeden z najpopularniejszych języków programowania wykorzystywany do tworzenia witryn i aplikacji internetowych, oferuje mechanizm szablonów noszący nazwę Smarty.
Książka "Smarty. Szablony w aplikacjach PHP" to kompletny przewodnik po tej technologii. Zawiera zasady działania szablonów Smarty oraz możliwości wykorzystania ich w projektach internetowych. Czytając ją, dowiesz się, jak zainstalować i skonfigurować Smarty, jak zbudowane są witryny oparte o ten system oraz jak kreować własne szablony. Poznasz oferowane przez Smarty funkcje, metody i modyfikatory, które będziesz mógł wykorzystać podczas budowy złożonych projektów. Przeczytasz o buforowaniu, poprawie wydajności aplikacji, rozszerzeniu możliwości Smarty za pomocą wtyczek i tworzeniu aplikacji wielojęzycznych.
* Instalacja i konfiguracja systemu Smarty
* Struktura witryny opartej na szablonach Smarty
* Narzędzia do projektowania szablonów
* Tworzenie prostych szablonów
* Korzystanie z modyfikatorów w szablonach
* Funkcje w szablonach
* Wykrywanie i usuwanie błędów
* Buforowanie stron i optymalizacja wydajności witryn
* Rozbudowywanie Smarty za pomocą wtyczek
Poznaj sposoby tworzenia profesjonalnych aplikacji sieciowych.
Analiza wpływu linków kanonicznych na linkowane przez nie strony.
Odpowiedzi uzyskane za pomocą Google Search Console API.
Jeden z ciekawszych wniosków pobocznych - zawartość cache nie pokrywa się z informacjami pochodzącymi z API.
Efektywne pozycjonowanie | 6 kroków na szczyty wyszukiwarekMartyna Zastrożna
Materiały ze szkolenia dla Explanator.
Ostatni rok to okres wielkich zmian (m.in. algorytm Hummingbird, gwałtowny wzrost szyfrowanych słów kluczowych), w wyniku których wiele osób zajmujących się SEO musi całkowicie przebudować swoją strategię działania.
Audyt on-page SEO - co powinien zawierać i z jakich narzędzi warto korzystaćSzymon Słowik
Prezentacja z I. edycji SEO barcamp Katowice organizowanej przez Linkhouse. Temat prezentacji dotyczył podejścia do przeprowadzania audytów SEO. Omawiałem zarówno kwestie narzędzi, technikaliów, metodologii, jak i celów, jakie powinny przyświecać specjaliście audytującemu serwis.
Techniczne aspekty SEO w wyszukiwarkach internetowych Czym są i jak tworzyć treści SEO friendly?
Google Analytics - kopalnia wiedzy o zachowaniach Internautów
Jak budować widoczność w wynikach wyszukiwania w sklepach internetowych? Jakie strategie SEO pomogą w podnoszeniu widoczności? Jak optymalnie wykorzystywać budżet crawlowania? Badania dotyczące wpływu wielkości sklepów na widoczność.
Wojciech Szymański - Kierownik Działu Promocji w Wyszukiwarkach w Ideo Sp. z o.o, ekspert ds. e-marketingu. Z branżą internetową związany od 2000 r. Posiada bogate doświadczenie związane z e-marketingiem ze szczególnym uwzględnieniem wyszukiwarek internetowych. Od 2006 roku Kierownik Działu Promocji w Wyszukiwarkach w Ideo Sp. z o.o, gdzie prowadził działania promocyjne dla takich firm jak BPH TFI SA, Zelmer S.A., SportLive24 S.A., GlaxoSmithKline czy Ceramika Tubądzin. Specjalizuje się również w zakresie usability oraz propaguje szeroko rozumiane zagadnienia findability. Kwalifikowany specjalista Google Advertising Professional. Autor audytów użyteczności oraz analiz biznesowych. Prowadził wiele szkoleń związanych z zagadnieniami e-marketingu. Wykłada na Studiach Podyplomowych w Wyższej Szkole Europejskiej w Krakowie.
Prezentacja artykułu z konferencji Infobazy 2014, prezentującego prace realizowane w projekcie MARKOS. Celem projektu MARKOS jest opracowanie koncepcji i rozwój sieciowej usługi umożliwiającej wyszukanie w globalnej przestrzeni projektów Open Source komponentów, które w sposób optymalny spełniają kryteria wyspecyfikowane przez użytkownika systemu. Dzięki opracowanemu systemowi twórcy i użytkownicy otwartego oprogramowania (ang. Open Source Software, OSS) będą mogli w łatwy i automatyczny sposób analizować zależności pomiędzy użytymi komponentami OSS, biorąc pod uwagę funkcjonalne, strukturalne i licencyjne aspekty kodu źródłowego.
Wynikiem projektu będzie prototyp usługi uruchomionej w Internecie przez partnerów projektu i udostępnionej poprzez zestaw interaktywnych aplikacji, zarówno przez graficzny interfejs użytkownika, jak i semantyczny punkt dostępu do danych w modelu linked data. Wspomniana powyżej usługa będzie realizowana za pomocą zestawu wewnętrznych komponentów systemu MARKOS, których zadaniem będzie wielokontekstowa analiza informacji dostępnych w sieci oraz ich przetwarzanie i przechowywanie w wewnętrznym repozytorium semantycznym systemu.
System MARKOS będzie oferował użytkownikom możliwość semantycznego przeszukiwania i przeglądania komponentów i bibliotek oraz nawigowania po strukturze kodu na wysokim poziomie abstrakcji. Ułatwi to, w szczególności architektom i analitykom, wyszukanie komponentu, który spełnia funkcjonalne, techniczne i prawne wymagania systemu. Z kolei programistom pozwoli lepiej zrozumieć dostępne interfejsy i wewnętrzne zależności oprogramowania. Dodatkowo system MARKOS będzie brał pod uwagę również aspekty integracji kodu, pokazując i wykorzystując zależności i związki między komponentami oprogramowania z różnych projektów. Dzięki temu w systemie MARKOS dostępny będzie zintegrowany globalny widok na istniejące oprogramowanie Open Source. MARKOS wykorzysta również zależności między komponentami do bardziej efektywnej i trafnej analizy kompatybilności licencji, dostarczając podstaw argumentacji prawnej i rozwiązywania konfliktów. W celu ułatwienia współpracy między różnymi projektami, MARKOS dostarczy też narzędzi umożliwiających powiadamianie o istotnych zmianach w komponentach pomiędzy zależnymi projektami. Oczekuje się w związku z powyższym, że system MARKOS ze swoją funkcjonalnością w kontekście globalnym ułatwi rozwój oprogramowania w oparciu o paradygmat Open Source wnosząc swój wkład w globalną społeczność.
Wykorzystaj nowoczesne narzędzia w swoich projektach internetowych
* Projektuj własne szablony
* Twórz aplikacje wielojęzyczne
* Popraw wydajność witryn internetowych
Współczesne witryny WWW to nie tylko prezentacje podstawowych informacji o firmach. W sieci można znaleźć setki sklepów internetowych, portali informacyjnych i innych serwisów będących samodzielnymi przedsięwzięciami. Coraz częściej strony WWW wykorzystywane są również jako interfejs użytkownika dla aplikacji. Tak rozbudowane projekty internetowe są realizowane przez zespoły składające się z programistów odpowiedzialnych za "zaplecze" serwisu i projektantów, których zadaniem jest opracowanie wyglądu witryny. W takich przypadkach niezbędny jest mechanizm pozwalający na oddzielenie treści i logiki stron WWW od ich prezentacji. Do tego celu stosowane są narzędzia umożliwiające skonstruowanie warstwy prezentacyjnej serwisu WWW w oparciu o szablony. PHP, jeden z najpopularniejszych języków programowania wykorzystywany do tworzenia witryn i aplikacji internetowych, oferuje mechanizm szablonów noszący nazwę Smarty.
Książka "Smarty. Szablony w aplikacjach PHP" to kompletny przewodnik po tej technologii. Zawiera zasady działania szablonów Smarty oraz możliwości wykorzystania ich w projektach internetowych. Czytając ją, dowiesz się, jak zainstalować i skonfigurować Smarty, jak zbudowane są witryny oparte o ten system oraz jak kreować własne szablony. Poznasz oferowane przez Smarty funkcje, metody i modyfikatory, które będziesz mógł wykorzystać podczas budowy złożonych projektów. Przeczytasz o buforowaniu, poprawie wydajności aplikacji, rozszerzeniu możliwości Smarty za pomocą wtyczek i tworzeniu aplikacji wielojęzycznych.
* Instalacja i konfiguracja systemu Smarty
* Struktura witryny opartej na szablonach Smarty
* Narzędzia do projektowania szablonów
* Tworzenie prostych szablonów
* Korzystanie z modyfikatorów w szablonach
* Funkcje w szablonach
* Wykrywanie i usuwanie błędów
* Buforowanie stron i optymalizacja wydajności witryn
* Rozbudowywanie Smarty za pomocą wtyczek
Poznaj sposoby tworzenia profesjonalnych aplikacji sieciowych.
Analiza wpływu linków kanonicznych na linkowane przez nie strony.
Odpowiedzi uzyskane za pomocą Google Search Console API.
Jeden z ciekawszych wniosków pobocznych - zawartość cache nie pokrywa się z informacjami pochodzącymi z API.
Digital Libraries are the services of Web 1.0; with Next Generation Internet we will need digital libraries that will deliver both semantic and social services.
Reading group presentation on how TreeMaps can be used to browse various information spaces; this presentation introduces TagsTreeMap component as well (http://wiki.corrib.org/index.php/TagsTreeMap)
1. węzełki.pl
Wyszukiwanie, Przeglądanie i
Współdzielenie Informacji z Wykorzystaniem
Technologii Semantycznych i Społecznych
Sebastian R. Kruk, Adam Gzella,
Arkadiusz Kwoska, Mariusz Cygan
Copyright @ KnowledgeHives.com
2. Dlaczego Google i tagowanie za mało?
Społeczeństwo a semantyka - “jajo i kura” ?
węzełki.pl
Copyright @ KnowledgeHives.com
2
3. Wyszukiwanie, tak ale ...
Szukanie: “Kruk”
Google:
3,030,000 stron
brak informacji o ptaku na pierwszej stronie
moja strona w DERI - 5 pozycja (3 po włączeniu profilu)
Yahoo!
5,370,000 stron
link do wieloznaczeniowej strony w Wikipedii - 6 pozycja
brak informacji o ptaku na pierwszej stronie
brak linku do mnie na pierwszej stronie
I co dalej? ... podaj dodatkowe słowo, np.: “ptak”
Copyright @ KnowledgeHives.com
3
4. Czego brakuje ?
podpowiedzi możliwych znaczeń
jest tylko podpowiedź prawdopodobnych rozszerzeń
zapytania, ale
możliwości szybkiego odfiltrowania stron do max
50 (?) rezultatów
pewności, że ...
ważny wynik nie jest gdzieś daleko na liście wyników, albo
że nie ma go w ogóle
ktoś nie miesza reklam z wynikami, tzn. mogę jasno
powiedzieć co jest reklamą a co nie
Copyright @ KnowledgeHives.com
4
5. Tagowanie - tak ...
Wykorzystanie społeczności do opisywania
rzeczywistości
Kilkanaście tagów to lepiej niż indeks
pełnotekstowy
Możemy mieszać tagi z opisami semantycznymi
Copyright @ KnowledgeHives.com
5
6. Tagowanie - tak, ale ...
Znaczenie tagów jest znane tylko nam lub naszym
“znajomym”, ale nie jest globalne
Ilość tagów rośnie w czasie - a popularne
narzędzia wizualizacji (Tag Clouds) i zarządzania
tagami nie są na to gotowe
Tagi mają znaczenie tylko w danym serwisie
jak szukać własnych tagów na przekroju różnych
serwisów? (ewentualnie: Tag-o-matic, int.ere.st)
czy jest Google dla tagów? (częściowio: Technorati)
Copyright @ KnowledgeHives.com
6
7. Dlaczego Google i tagowanie to za mało?
Społeczeństwo a semantyka - “jajo i kura” ?
węzełki.pl
Copyright @ KnowledgeHives.com
7
8. Semantyka jest trudna ?
“Tagi są użyteczne, ... bo są proste” i co dalej ?
Jak ułatwić semantyczny opis?
semantyczne tagowanie: Flickr machine tags
wykorzystanie słowników: taksonomie, tezaurusy
zachęcanie do bardziej złożonych opisów (Aparicio)
Nie twórz semantyki - znajdź ją
Google tylko wykorzystuje linki pomiędzy stronami
Czas na wykorzystanie istniejącej informacji - dokumenty,
bazy danych, interakcja (Sindice, Freebase)
Copyright @ KnowledgeHives.com
8
9. Mamy semantykę, i ?
Obecne metody wyszukiwania raczej się nie
nadają:
po słowach kluczowych - stały by się za skomplikowane
chmury tagów (Tag Clouds) - jak wyrazić powiązania?
nawigacja fasetowa (faceted navigation) - wymaga
operacji na nieustalonym schemacie
Rozwiązanie: wykorzystaj znajomych do pomocy:
społeczne filtrowanie (Collaborative Filtering)
społeczne przeglądanie (Collaborative Browsing)
Copyright @ KnowledgeHives.com
9
10. Social Semantic Collaborative Filtering
Dlaczego?
Ostateczne rozwiązanie pozyskiwania wiedzy: nieformalna
komunikacja (“word of mouth”)
Jak?
Każdy klasyfikuje (filtruje) informacje w katalogach z zakładkami:
prywatne taksonomie
Katalogi opisywane są pojęciami ze zdefiniowanych słowników
Znajomi dzielą się katalogami tworząc społeczne taksonomie
System rekomenduje katalogi od dalszych znajomych (poza
horyzontem sieci społecznej)
Wynik?
Wiedza przepływa od eksperta dziedzinowego przez sieć
społeczna do danego użytkownika
System gromadzi informację kontekstową o danym użytkowniku,
np.: w celu poprawy wyników wyszukiwania
Copyright @ KnowledgeHives.com
10
11. Social Semantic Collaborative Filtering
TAG 3
Katalogi opisane Słowo A
semantycznie Słowo B
Zasób R1
Taksonomie
TAG 2
Słowa kluczowe Katalog Temat A
Zasób R2
Zasób R3
TAG 1
Tagowane zasoby
TAG 2
Rekomendacje na podstawie silnik
wnioskujący
profilu użytkownika
(program w Prologu) Zasób R3
Zasób R2
Copyright @ KnowledgeHives.com
11
12. Social Semantic Collaborative Filtering
FOAF:KNOWS
SSCF:INCLUDE
SSCF:RECOMMEND
SSCF:BOOKMARK
Data Mining Wnioskowanie Wprowadzenie
dla Opornych w OWL-DL do RDF
Copyright @ KnowledgeHives.com
12
13. MultiBeeBrowse - Przeglądanie Grafu RDF
Wyszukiwanie nie powinno kończyć się jedynie
długą listą wyników
Wyniki nie są listą zasobów ale grafem
powiązanych pojęć
A co jeśli zgubimy się w hiperprzestrzeni ? („Lost
in hyperspace”)
Potrzeba niezależnego API serwisów do
przeglądania, wyszukiwania, i filtrowania
Dzielenie się doświadczeniem w
przeglądaniu - społeczna nawigacja
(collaborative browsing)
Copyright @ KnowledgeHives.com
13
14. Społeczna Nawigacja
(Collaborative Browsing)
Dziś ludzie dzielą się zdjęciami, muzyką, linkami,
itp. - dlaczego nie zapytaniami?
Społeczna nawigacja umożliwia dzielenie się
doświadczeniem w konstruowaniu
skomplikowanych zapytań i interakcji
bazuje na komponencie do Social Semantic Collaborative
Filtering
użytkownicy mogą tagować swoje zapytania
nasi znajomi mogą nam pomóc w poprawieniu
zapytań którymi się z nimi dzielimy
Copyright @ KnowledgeHives.com
14
15. Kontekst Przeglądania
Problemy z typową nawigacją
Odnajdywanie informacji
Wielokrotne poprawianie zapytania (interakcja przód-tył)
Przegląd obecnego kontekstu interakcji z systemem
Odnajdywanie poprzednich zapytań
4 widoki:
Prosty widok
Widok historii ostatnich operacji
Graf ostatniej sesji przeglądania
Pełna historia interakcji z systemem
Copyright @ KnowledgeHives.com
15
16. Dlaczego Google i tagowanie to za mało?
Społeczeństwo a semantyka - “jajo i kura” ?
węzełki.pl
Copyright @ KnowledgeHives.com
16
17. Semantyczny serwis społecznościowy
Słowniki i opis semantyczny dodatkiem do
tagowania
Znajomi dzielą się wiedzą a nie tylko tagują
wspólne repozytorium zasobów
Rekomendacje oparte na znaczeniu informacji
Koniec silosów - wymiana informacji poza
systemami
Copyright @ KnowledgeHives.com
17
18. węzełki.pl
Pierwszy polski semantyczny serwis
społecznościowy
Rozszerzenie digi.me-core:
obecnie w fazie beta 1 (beta 2 wkrótce)
współdzielenie zakładek ze znajomymi (SSCF)
licencja open source AGPL
Dodatkowe komponenty:
zbieranie semantyki o dodanej stronie
automatyczna klasyfikacja zakładek
semantyczne rekomendacje
synchronizacja z innymi serwisami społecznymi
Copyright @ KnowledgeHives.com
18