stanford-oval/wikipedia huggingface dataset:
Arrojadoa marylaniae

| Arrojadoa marylaniae> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
(không phân hạng): Angiospermae
(không phân hạng): Eudicots
Bộ (ordo): Caryophyllales
Họ (familia): Cactaceae
Chi (genus): Arrojadoa
Loài (species): A. marylaniae
Danh pháp hai phần
Arrojadoa marylaniae Soares Filho & M.Machado, 2003 
Arrojadoa marylaniae là một loài thực vật có hoa trong họ Cactaceae. Loài này được Soares Filho & M.Machado mô tả khoa học đầu tiên năm 2003.
Chú thích

↑  The Plant List (2010). “Arrojadoa marylaniae”. Truy cập ngày 19 tháng 8 năm 2013.
Anemopaegma paraense

| Anemopaegma paraense> Phân loại khoa học |
| --- | --- |
Giới (regnum): Plantae
(không phân hạng): Angiospermae
(không phân hạng): Eudicots
(không phân hạng): Asterids
Bộ (ordo): Lamiales
Họ (familia): Bignoniaceae
Chi (genus): Anemopaegma
Loài (species): A. paraense
Danh pháp hai phần
Anemopaegma paraense Bureau & K.Schum., 1896 
Anemopaegma paraense là một loài thực vật có hoa trong họ Chùm ớt. Loài này được Bureau & K.Schum. mô tả khoa học đầu tiên năm 1896.
Chú thích

↑  The Plant List (2010). “Anemopaegma paraense”. Truy cập ngày 21 tháng 8 năm 2013.
Bomolocha scutellaris

| Bomolocha scutellaris> Phân loại khoa học |
| --- | --- |
Giới (regnum): Animalia
Ngành (phylum): Arthropoda
Lớp (class): Insecta
Bộ (ordo): Lepidoptera
Họ (familia): Erebidae
Chi (genus): Bomolocha
Loài (species): B. scutellaris
Danh pháp hai phần
Bomolocha scutellaris Grote, 1873 
Bomolocha scutellaris là một loài bướm đêm trong họ Erebidae.
Chú thích

↑  Bisby, F.A.; Roskov, Y.R.; Orrell, T.M.; Nicolson, D.; Paglinawan, L.E.; Bailly, N.; Kirk, P.M.; Bourgoin, T.; Baillargeon, G.; Ouvrard, D. (2011). “Species 2000 & ITIS Catalogue of Life: 2011 Annual Checklist”. Species 2000: Reading, UK. Truy cập ngày 28 tháng 6 năm 2014.
↑  Beccaloni, G. W., Scoble, M. J., Robinson, G. S. & Pitkin, B. (Editors). (2003) The Global Lepidoptera Names Index (LepIndex). (Geraadpleegd maart 2013).
Async/await

Trong lập trình máy tính, mô thức async/await là một tính năng cú pháp của nhiều ngôn ngữ lập trình, cho phép cấu trúc nên hàm 'bất đồng bộ, non-blocking' theo lối y hệt ở vẻ ngoài như hàm đồng bộ thông thường. Về mặt ngữ nghĩa, nó gần gũi với khái niệm coroutine và thường hay được thực hiện bằng kỹ thuật tương tự, và chủ yếu là nhằm tạo cơ hội để cho chương trình thực thi phần code khác trong khi chờ đợi tác vụ bất đồng bộ, chạy lâu dài nào đó hoàn thành, tác vụ như thế thường được biểu trưng bằng promise hoặc cấu trúc dữ liệu tương tự. Tính năng này hiện diện trong C# 5.0, C++ 20, Python 3.5, F#, Hack, Julia, Dart, Kotlin 1.1, Rust 1.39, Nim 0.9.4, JavaScript ES2017, Swift 5.5 và Zig, và trong một số công trình thử nghiệm trong các bản mở rộng, các phiên bản beta và các bản thực hiện nhất định của Scala.
Lịch sử

Vào năm 2007, F# đã thêm workflow bất đồng bộ cùng với cú pháp await trong phiên bản 2.0. Điều này ảnh hưởng đến cơ chế async/await được thêm vào C# sau này.
Microsoft đã phát hành phiên bản C# kèm với cú pháp async/await lần đầu tiên trong bản Async CTP (2011). Và sau này phát hành chính thức trong C# 5 (2012).
Nhà phát triển dẫn dắt của Haskell, Simon Marlow, đã tạo ra package bất đồng bộ vào năm 2012.
Python đã thêm hỗ trợ async/await trong phiên bản 3.5 vào năm 2015, thêm 2 từ khóa mới là async và await.
TypeScript đã thêm hỗ trợ cho async/await trong phiên bản 1.7 vào năm 2015.
Javascript đã thêm hỗ trợ cho async/await vào năm 2017 làm một phần của bản JavaScript ECMAScript 2017.
Rust đã thêm hỗ trợ cho async/await trong phiên bản 1.39.0 vào năm 2019 với 1 từ khóa mới là async và mô thức lazy evaluation cho await.
C++ đã thêm hỗ trợ async/await trong phiên bản 20 vào năm 2020 với 3 từ khóa mới là co_return, co_await và co_yield.
Swift đã thêm hỗ trợ async/await trong phiên bản 5.5 vào năm 2021, thêm 2 từ khóa mới là async và await. Phiên bản này được phát hành cùng với bản thực hiện cụ thể cho Mô hình Actor với từ khóa actor trong đó sử dụng async/await để điều hòa truy cập từ bên ngoài vào từng actor.
Trong F#

F# đã thêm workflow bất đồng bộ trong phiên bản 2.0. Workflow bất đồng bộ này được thực hiện thông qua biểu thức computation. Ta có thể định nghĩa nó mà không cần chỉ định bất kì ngữ cảnh đặt biệt nào (như async trong C#). Trong workflow bất đồng bộ của F# thì thêm dấu cảm (!) vào từ khóa để bắt đầu tác vụ bất đồng bộ.
Hàm bất đồng bộ sau đây tải xuống dữ liệu từ URL thông qua workflow bất đồng bộ:
let asyncSumPageSizes (uris: #seq<Uri>) : Async<int> = async {
    use httpClient = new HttpClient()
    let! pages = 
        uris
        |> Seq.map(httpClient.GetStringAsync >> Async.AwaitTask)
        |> Async.Parallel
    return pages |> Seq.fold (fun accumulator current -> current.Length + accumulator) 0
}
Trong C#

Mô thức async/await được Microsoft đưa vào C# kể từ phiên bản 5.0 với tên gọi là 'Mô thức bất đồng bộ dựa trên Task'. Phương thức bất đồng bộ cần phải trả về một trong các kiểu void, Task, Task<T>, và ValueTask<T> (kiểu cuối mới được thêm vào từ phiên bản 7.0). Phương thức bất đồng bộ mà trả về void là nhằm dùng cho event handler; trong hầu hết trường hợp khi phương thức không cần phải trả về giá trị gì (tức void), thì thay vào đó nên trả về Task vì làm vậy cho phép việc xử trí ngoại lệ trực quan hơn.
Phương thức mà có sử dụng await thì phải được khai báo với từ khóa async. Trong phương thức khai báo bằng async mà có kiểu giá trị trả về là Task<T> thì trong đó phải có return statement của kiểu gán được vào T chứ không phải là vào Task<T>; trình biên dịch sẽ gói giá trị T đấy vào kiểu generic Task<T>. Bất kì phương thức nào mà có kiểu trả về Task hoặc Task<T> thì cũng có thể gọi phương thức đó với từ khóa await được, không nhất thiết phương thức đó phải được khai báo bằng async.
Phương thức bất đồng bộ sau đây tải xuống dữ liệu từ URL bằng await. Bởi vì phương thức này duyệt qua toàn bộ uri và phát đi tác vụ cho mỗi uri xong hẳn rồi mới chờ các tác vụ đấy hoàn thành bằng từ khóa await, nên tập tài nguyên có thể được tải đồng thời thay vì phải chờ đợi phần tài nguyên cuối hoàn tất trước khi bắt đầu tải phần tiếp theo.
public async Task<int> SumPageSizesAsync(ICollection<Uri> uris) 
{
    var client = new HttpClient();
    var loadUriTasks = new List<Task<byte[]>>();
    foreach (var uri in uris)
    {
        var loadUriTask = client.GetByteArrayAsync(uri);
        loadUriTasks.Add(loadUriTask);
    }
    
    var total = 0;
    foreach (var loadUriTask in loadUriTasks)
    {
        statusText.Text = $"Tìm thấy {total} byte ...";
        var resourceAsBytes = await loadUriTask;
        total += resourceAsBytes.Length;
    }
    statusText.Text = $"Tìm thấy {total} byte cả thảy";

    return total;
}
Trong Scala

Trong bản mở rộng thử nghiệm Scala-async cho Scala, await là một "phương thức", mặc dù nó không vận hành giống như phương thức bình thường. Hơn nữa, không giống như ở C# 5.0 trong đó phương thức phải được đánh dấu là bất đồng bộ, trong Scala-async, ta có khối code được bao quanh bằng "lời gọi" bất đồng bộ.
Trong Scala > Cách nó hoạt động

Trong Scala-async, async thực ra được thực hiện thông qua Scala macro, khiến trình biên dịch phát sinh code khác hoàn toàn, và tạo ra bản thực hiện dựa trên máy trạng thái hữu hạn (được coi là có hiệu quả hơn bản thực hiện dựa trên monad, song viết bằng tay thì không tiện bằng).
Có mấy kế hoạch nhằm để Scala-async hỗ trợ nhiều loại thực hiện khác nhau, bao gồm cả loại phi bất đồng bộ.
Trong Python

Python 3.5 (2015) đã thêm hỗ trợ cho async/await như đã mô tả trong PEP 492 (https://www.python.org/dev/peps/pep-0492/).
import asyncio

async def main():
    print("hello")
    await asyncio.sleep(1)
    print("world")

asyncio.run(main())
Trong JavaScript

Toán tử await trong Javascript chỉ có thể được dùng ở bên trong hàm bất đồng bộ. Nếu tham số là promise thì sự thực thi của hàm bất đồng bộ đấy sẽ tiếp tục khi promise đấy được phân giải (song trong trường hợp nếu như promise bị từ chối, thì một lỗi sẽ được ném ra và có thể xử trí lỗi đó thông qua cơ chế xử trí ngoại lệ của Javascript). Nếu tham số đấy không phải là promise thì tham số đấy bản thân nó sẽ được trả về ngay lập tức.
Nhiều thư viện cung cấp đối tượng promise có thể dùng được với await, miễn là nó khớp với đặc tả promise bản địa của Javascript. Tuy nhiên, promise từ thư viện jQuery thì không tương thích với tiêu chuẩn Promises/A+ mãi đến bản jQuery 3.0.
Đây là một ví dụ (được điều chỉnh lại từ bài viết này):
async function createNewDoc() {
  let response = await db.post({}); // đăng tài liệu mới
  return db.get(response.id); // tìm bằng id
}

async function main() {
  try {
    let doc = await createNewDoc();
    console.log(doc);
  } catch (err) {
    console.log(err);
  }
}
main();
Trong C++

Trong C++, await (có tên là co_await trong C++) đã chính thức được hợp nhất vào phiên bản 20. Coroutine hỗ trợ cho nó, cùng với các từ khóa như co_await thì sẵn có trong hai trình biên dịch GCC và MSVC còn Clang thì mới chỉ hỗ trợ một phần.
Đáng lưu ý rằng std::promise và std::future, mặc dù có vẻ sẽ là hai loại đối tượng khả await, nhưng lại không hề thực hiện những cơ chế cần thiết để khi trả về chúng từ coroutine thì có thể await lên chúng được bằng co_await. Lập trình viên phải tự thực hiện một số lượng các hàm thành viên public, chẳng hạn như await_ready, await_suspend, và await_resume lên kiểu trả về để kiểu đó có thể await lên được. Có thể xem chi tiết tại cppreference.
#include <iostream>
#include "CustomAwaitableTask.h"

using namespace std;

CustomAwaitableTask<int> add(int a, int b)
{
    int c = a + b;
    co_return c;
}

CustomAwaitableTask<int> test()
{
    int ret = co_await add(1, 2);
    cout << "return " << ret << endl;
    co_return ret;
}

int main()
{
    auto task = test();

    return 0;
}
Trong C

Chưa có hỗ trợ chính thức cho async/await trong ngôn ngữ C. Một số thư viện coroutine chẳng hạn như s_task mô phỏng từ khóa await/async bằng macro.
#include <stdio.h>
#include "s_task.h"

// định nghĩa bộ nhớ stack cho các tác vụ
int g_stack_main[64 * 1024 / sizeof(int)];
int g_stack0[64 * 1024 / sizeof(int)];
int g_stack1[64 * 1024 / sizeof(int)];

void sub_task(__async__, void* arg) {
    int i;
    int n = (int)(size_t)arg;
    for (i = 0; i < 5; ++i) {
        printf("task %d, delay seconds = %d, i = %d\n", n, n, i);
        s_task_msleep(__await__, n * 1000);
        //s_task_yield(__await__);
    }
}

void main_task(__async__, void* arg) {
    int i;

    // tạo hai tác vụ con
    s_task_create(g_stack0, sizeof(g_stack0), sub_task, (void*)1);
    s_task_create(g_stack1, sizeof(g_stack1), sub_task, (void*)2);

    for (i = 0; i < 4; ++i) {
        printf("task_main arg = %p, i = %d\n", arg, i);
        s_task_yield(__await__);
    }

    // đợi cho đến khi các tác vụ con kết thúc
    s_task_join(__await__, g_stack0);
    s_task_join(__await__, g_stack1);
}

int main(int argc, char* argv) {

    s_task_init_system();

    // tạo tác vụ chính
    s_task_create(g_stack_main, sizeof(g_stack_main), main_task, (void*)(size_t)argc);
    s_task_join(__await__, g_stack_main);
    printf("all task is over\n");
    return 0;
}
Trong Perl 5

Module Future::AsyncAwait là chủ đề của một khoản chi cho Quỹ Perl vào tháng 9 năm 2018.
Trong Rust

Vào ngày 7 tháng 11 năm 2019, async/await được phát hành vào phiên bản ổn định của Rust. Hàm bất đồng bộ trong Rust được biến đổi từ cú pháp tiện lợi sang hàm số có trả về giá trị có thực hiện trait Future. Hiện nay nó được thực hiện bằng máy trạng thái hữu hạn.
// Trong file Cargo.toml của crate, ta cần `futures = "0.3.0"` trong mục các dependency
// để cho chúng ta có thể sử dụng crate futures

extern crate futures; // Hiện nay không có executor nào trong thư viện `std` cả.

// Cái này sẽ "khử đường" (desugar) về thành cái giống như
// `fn async_add_one(num: u32) -> impl Future<Output = u32>`
async fn async_add_one(num: u32) -> u32 {
    num + 1
}

async fn example_task() {
    let number = async_add_one(5).await;
    println!("5 + 1 = {}", number);
}

fn main() {
    // Tạo ra Future sẽ không khởi động execution
    let future = example_task();

    // `Future` chỉ thực thi khi ta thực sự poll nó chứ không như Javascript.
    futures::executor::block_on(future);
}
Trong Swift

Swift 5.5 (2021) đã thêm hỗ trợ cho async/await như đã mô tả trong SE-0296 (https://github.com/apple/swift-evolution/blob/main/proposals/0296-async-await.md).
func getNumber() async throws -> Int {
    try await Task.sleep(nanoseconds: 1_000_000_000)
    return 42
}

Task {
    let first = try await getNumber()
    let second = try await getNumber()
    print(first + second)
}
Lợi ích và phê phán

Lợi điểm đáng kể của mô thức async/await trong những ngôn ngữ có hỗ trợ nó là nó tạo điều kiện viết code 'bất đồng bộ, non-blocking' với overhead tối thiểu mà lại trông hầu như giống hệt code 'đồng bộ, blocking' xưa giờ. Nói cụ thể, người ta cho rằng await là cách tốt nhất để viết code bất đồng bộ trong những chương trình có sử dụng kỹ thuật truyền thông điệp; hơn nữa, do gần với kiểu code blocking, nên await được nêu là mang ưu điểm dễ đọc và chỉ cần lượng boilerplate code tối thiểu. Vì thế, async/await giúp cho lập trình viên dễ suy lý về chương trình của mình hơn, và await có xu hướng thúc đẩy nên code non-blocking tốt hơn, kiên cố hơn trong những ứng dụng cần đến nó. Các chương trình như vậy trải dài từ chương trình biểu thị giao diện đồ họa người dùng đến những chương trình stateful phía server có khả năng nới quy mô đến mức đồ sộ, chẳng hạn như game và ứng dụng tài chính.
Còn khi phê phán await, người ta cho thấy rằng await có xu hướng khiến cho code bao quanh phải trở nên bất đồng bộ luôn; về mặt khác, người ta biện luận rằng bản tính "truyền nhiễm" này của code await (có khi được đem so sánh với "vi-rút zombie") thực ra là điều cố hữu trong tất cả các loại lập trình bất đồng bộ, nên await như vậy không hề có gì độc lạ ở đây cả.
Ghi chú thuật ngữ

↑  Implement
↑  Implementation
↑  Modifier
↑  Computation Expressions
↑  Task-based asynchronous pattern
↑  Tức giống như gọi hàm, gọi phương thức.
↑  Desugar
Bessie Head

| Bessie Amelia Emery Head |
| --- | --- |
Sinh: (1937-07-06)6 tháng 7, 1937 Nam Phi
Mất: (1986-04-17)17 tháng 4, 1986 Botswana
Nghề nghiệp: Nhà văn
Quốc tịch: Nam Phi, Botswana
Thể loại:  Truyện ngắn, tiểu thuyết, tiểu luận 
Bessie Amelia Emery Head, hay Bessie Head (6 tháng 7 năm 1937 - 17 tháng 4 năm 1986), dù sinh ra ở Nam Phi, nhưng bà được biết đến là nhà văn có ảnh hưởng nhất của Botswana. Bà viết tiểu thuyết, truyện ngắn và tự truyện thấm đẫm những câu hỏi và suy tư về thế giới nội tâm.
Tiểu sử

Bessie Amelia Emery sinh ra ở Pietermaritzburg, Nam Phi, là con của một phụ nữ da trắng và một người đàn ông da màu vào thời điểm khi những mối quan hệ khác chủng tộc được xem  là bất hợp pháp tại Nam Phi. Mẹ của Bessie, Bessie Amelia Emery, đã phải nằm nhiều năm trong bệnh viện tâm thần sau cái chết của đứa con đầu lòng, một cậu bé trai. Bà ở tại một bệnh viện tâm thần lớn ở Pietermaritzburg khi sinh ra Bessie. Mặc dù không được phép nuôi nấng Bessie, nhưng tên đứa con gái của mình là do bà đặt cho.
Lúc đầu đứa trẻ sơ sinh Bessie được nhận nuôi bởi một gia đình người da trắng khi cho cô bé là người da trắng. Nhưng vài tuần sau, họ phát hiện ra cô bé là người da màu nên đã trả lại cho chính quyền. Sau đó, cô được đưa cho một gia đình đa chủng tộc người da màu, Heathcotes, trong một vùng nghèo của người da màu, Pietermaritzburg. Tại đây, cô lớn được nuôi dưỡng bởi một người mẹ nuôi nghiêm khắc, Nelly Heathcote, cô theo học tại Nhà thờ Công giáo và trường tiểu học địa phương. Cô chưa nhận ra mình không phải là huyết thống của Heathcote. Cô có một tuổi thơ phẳng lặng, trừ việc mẹ nuôi cô không ưu gì với tình yêu sách của cô.
Khi Bessie lên mười hai, cô đã hoàn thành bốn năm học tiểu học, chính quyền đã đưa cô đến  St. Monica's Home dành cho những cô gái da màu Coloured Girls, một trường nội trú Anh giáo ở Durban. Lúc đầu mới vào, Bessie đã cố chạy trốn để về nhà. Nhưng sau đó cô nhận ra được giá trị của sách và kiến thức mà nhà trường cung cấp. Vào cuối năm thứ hai, cô gặp phải một biến cố đầu tiên của cuộc đời. Chính quyền bất ngờ cho rằng cô là con gái của một người phụ nữ da trắng, không phải là Nelly Heathcote, cô sẽ không được trở về ngôi nhà cũ của mình vào dịp lễ Giáng sinh. Cô gái trẻ chịu đựng một cú sốc, cô thu mình lại vào những tổn thương.
Hai năm sau, cuối năm 1953, Bessie đã vượt qua kỳ thi Chứng chỉ Thiếu niên. Cô tiếp tục học Chứng chỉ đào tạo giáo viên hai năm tại một trường đại học gần đó khi sống ở St. Monica's. Vào đầu năm 1956, tòa án công nhận cô đã trưởng thành; cô được trao chứng chỉ giảng dạy tạm thời; cô làm giáo viên tại một trường tiểu học màu ở Durban. Trong suốt khoảng thời gian này, cô có một tình bạn thân với một số viên chức da trắng ở St. Monica, và những thành viên cộng đồng Ấn Độ. Cô bắt đầu quan tâm đến những tôn giáo khác ngoài Kitô, đặc biệt là Ấn Độ giáo. Cô chỉ có một kênh liên lạc với những người da đen châu Phi ở Natal, một cộng đồng lớn tại Zulu.
Giữa năm 1958, khi mệt mỏi với những thói quen thường ngày và mơ về những điều lớn lao, Head từ chức. Cô đã có một bữa tiệc sinh nhật lần thứ 21 với những người bạn cũ, sau đó đi tàu tới Cape Town, nơi cô dự định sẽ trở thành một nhà báo.
Thư mục

When Rain Clouds Gather – London: Gollancz, 1968. New York: Simon & Schuster, 1969. Heinemann, 1987. Macmillan Education, 2006.
Maru – London: Gollancz, 1971. New York: McCall, 1971. Heinemann African Writers Series (101), 1972; 1987.
A Question of Power – London: Davis-Poynter, 1973. New York: Pantheon, 1974. Heinemann (AWS 149), 1974, 1986. Penguin Modern Classics, with an introduction by Margaret Busby, 2002; Penguin African Writers, 2012.
The Collector of Treasures and Other Botswana Village Tales – London: Heinemann, 1977. Cape Town: David Philip, 1977.
Serowe: Village of the Rain Wind – London: Heinemann, 1981. Cape Town: David Philip, 1981.
A Bewitched Crossroad: An African Saga – Johannesburg: Ad Donker, 1984.
Tales of Tenderness and Power, ed. Gillian Stead Eilersen – Johannesburg: Ad Donker, 1989. Oxford: Heinemann, 1990.
A Woman Alone: Autobiographical Writings, ed. Craig MacKenzie – Oxford: Heinemann, 1990.
A Gesture of Belonging: Letters from Bessie Head, 1965-1979, ed. Randolph Vigne – London: South Africa Writers. Portsmouth, New Hampshire: Heinemann, 1990. Johannesburg: Wits University Press, 1991.
The Cardinals. With Meditations and Short Stories, ed. Margaret J. Daymond – Cape Town: David Philip, 1993. Heinemann, 1996.
Imaginative Trespasser: Letters between Bessie Head, Patrick and Wendy Cullinan 1963-1977, compiled by Patrick Cullinan, with a personal memoir – Johannesburg: Wits University Press; Trenton, New Jersey: Africa World Press, 2005.
When Rain Clouds Gather and Maru, introduced by Helen Oyeyemi – London: Virago, 2010.
Medusozoa

| Medusozoa |
| --- | --- |

Phân loại khoa học
Giới (regnum): Animalia
Phân giới (subregnum): Eumetazoa
Ngành (phylum): Cnidaria
Phân ngành (subphylum): Medusozoa
Medusozoa là một phân ngành của ngành Cnidaria. Nghĩa của từ Medusozoa là sứa (Tiếng Hy Lạp: μέδουσα; phiên âm: médousa). Đặc điểm chung của các loài thuộc Medusozoa là có khả năng di chuyển và sống độc lập, dị dưỡng trong ngành Cridaria.
Trong phân ngành Medusozoa, người ta phân nhỏ hơn thành các lớp: Sứa hộp (Cubozoa), thủy tức (Hydrozoa), sứa có cuống (Staurozoa), Polypodiozoa và sứa thông thường (Scyphozoa). Medusozoa được phân biệt là có giai đoạn medusa trong vòng đời thông thường rất phức tạp của chúng, một medusa điển hình có cơ thể hình dù với các tua châm xung quanh phần gờ. Ngoại trừ một số loài thủy tức (Hydrozoa) và Polypodiozoa, tất cả đều có tên gọi thông thường chung là sứa trong giai đoạn medusa bơi lội tự do của chúng.
Phân loại

Ngành Cnidaria được nhiều người chấp nhận là đơn ngành và bao gồm hai nhánh, Anthozoa và Medusozoa. Anthozoa bao gồm các phân lớp Hexacorallia (san hô cứng) và Octocorallia (san hô mềm), cũng như Ceriantharia (hải quỳ sống trong ống). Có sự ủng hộ mạnh mẽ đối với nhóm này là những sinh vật đầu tiên tách ra khỏi dòng dõi tổ tiên.
Phân ngành Medusozoa bao gồm các lớp Staurozoa, Cubozoa, Scyphozoa và Hydrozoa, nhưng mối quan hệ giữa các lớp này là không rõ ràng. Phân tích bằng cách sử dụng các tiểu đơn vị RNA ribosome cho thấy rằng trong Medusozoa, Staurozoa là nhóm đầu tiên rẽ ra, với Cubozoa và Scyphozoa tạo thành một nhánh, một nhóm chị-em với Hydrozoa. Nghiên cứu sâu hơn liên quan đến trật tự các gen ti thể ủng hộ quan điểm này, và việc chúng sở hữu các bộ gen ti thể tuyến tính là bằng chứng nổi bật về tính đơn ngành của Medusozoa.
Các thuộc tính của lớp Polypodiozoa, chứa một loài đơn lẻ Polypodium hydriforme, từ lâu vẫn chưa rõ ràng. Loài này là động vật nội ký sinh trứng cá tầm và các loài tương tự, có vòng đời đặc biệt. Theo truyền thống, nó được coi là một loài thích ty bào vì sở hữu các tế bào châm, nhưng các nghiên cứu phân tử sử dụng trình tự 18S rDNA đã đặt nó gần với Myxozoa hơn. Các nghiên cứu sâu hơn liên quan đến trình tự 28S rDNA cho thấy rằng nó là một phần của nhánh thủy tức Leptothecata, hoặc là một đơn vị phân loại chị-em với Hydrozoa, và không gộp nhóm với Myxozoa.
Đặc điểm

Medusozoa khác với Anthozoa ở chỗ có một giai đoạn medusa trong vòng đời của chúng. Hình thái cơ bản là medusa (thường là giai đoạn trưởng thành hoặc giai đoạn hữu tính) - ấu trùng planula polyp - medusa. Đối xứng là mẫu 4, với các bộ phận bằng 4 hoặc bội số của 4.  Các phân tử DNA ti thể có dạng thẳng chứ không phải dạng tròn như ở Anthozoa và hầu hết các loài động vật khác. Cnidae, các tế bào nổ đặc trưng của Cnidaria, được sử dụng để bắt con mồi và phòng thủ, thuộc loại duy nhất, là tế bào châm (nematocyst) nhưng không có tế bào xoắn (spirocyst) hoặc tế bào gập (ptychocyst). Ngược lại, vòng đời của Anthozoa liên quan đến một ấu trùng planula định cư và trở thành polyp không cuống, là giai đoạn trưởng thành hoặc sinh dục.
Go Ahead Eagles

Câu lạc bộ bóng đá Hà LanBản mẫu:SHORTDESC:Câu lạc bộ bóng đá Hà Lan
Go Ahead Eagles là một câu lạc bộ bóng đá chuyên nghiệp Hà Lan đến từ thành phố Deventer thuộc tỉnh Overijssel. Họ chơi ở Eredivisie, giải đấu hàng đầu của bóng đá Hà Lan, sau khi thăng hạng từ giải hạng hai Eerste Divisie trong mùa giải 2020-21. Sân nhà của câu lạc bộ kể từ năm 1920 là De Adelaarshorst. Câu lạc bộ đã 4 lần vô địch quốc gia vào các năm 1917, 1922, 1930 và 1933.
Họ đã sản sinh ra nhiều cầu thủ đáng chú ý bao gồm Raimond van der Gouw, René Eijkelkamp, ​​Marc Overmars, Paul Bosvelt, Jan Kromkamp, ​​Victor Sikora, Bert van Marwijk và Demy de Zeeuw đồng thời cung cấp cho Henk ten Cate, Erik ten Hag và Leo Beenhakker trải nghiệm huấn luyện viên đầu tiên.
Cầu thủ > Đội hình hiện tại

Ghi chú: Quốc kỳ chỉ đội tuyển quốc gia được xác định rõ trong điều lệ tư cách FIFA. Các cầu thủ có thể giữ hơn một quốc tịch ngoài FIFA.
Cầu thủ > Cho mượn

Ghi chú: Quốc kỳ chỉ đội tuyển quốc gia được xác định rõ trong điều lệ tư cách FIFA. Các cầu thủ có thể giữ hơn một quốc tịch ngoài FIFA.
Nhân viên câu lạc bộ

| Chức vụ | Tên |
| --- | --- |
Huấn luyện viên trưởng: René Hake
Trợ lý Huấn luyện viên trưởng: Roeland ten Berge
Huấn luyện viên thủ môn: Eric Weghorst
Huấn luyện viên thể hình: Jelmer Sevenster
Huấn luyện viên trinh sát: Frank Berghuis
Nhà phân tích đối thủ: Gert Jan Karsten
Trinh sát: Jan Groeneweg Dennis Hulshoff Jules Reimerink
Nhà khoa học thể thao: Tim van der Meulen
Nhà vật lý trị liệu: Frank Nab
Thư ký: Adrie Steenbergen
Nhà quản lý trang phục: Carla Whittie-Bruggeman
Giám đốc học viện: Eric Whittie
Quản lý đội: Alfred Knippenberg
Giám đốc kỹ thuật: Paul Bosvelt