Saint Hilarion Castle

The Saint Hilarion Castle lies on the Kyrenia mountain range, in Cyprus. This location provided the castle with command of the pass road from Kyrenia to Nicosia. It is the best preserved ruin of the three former strongholds in the Kyrenia mountains, the others being Kantara and Buffavento.

Saint Hilarion Castle
(Turkish: Saint Hilarion Kalesi Greek: Κάστρο του Αγίου Ιλαρίωνα)
Saint Hilarion Castle
Location within Cyprus
General information
Town or cityKyrenia
CountryDe jure  Cyprus
De facto  Northern Cyprus
Coordinates35.3123°N 33.2808°E / 35.3123; 33.2808
Construction started10th-century

History

The castle is not named after St. Hilarion, active in Palestine and Cyprus in the 4th century. It was named after an obscure saint, who is traditionally held to have fled to Cyprus after the Arab conquest of the Holy Land and retired to the hilltop on which the castle was built for hermitage. An English traveller reported the preservation of his relics in the 14th century.[1] It has been proposed that a monastery built in his name preceded the castle, which was built around it. However, this view is not supported by any substantial evidence.[2]

Starting in the 11th century, the Byzantines began fortification. Saint Hilarion formed the defense of the island with the castles of Buffavento and Kantara against Arab pirates raiding the coast. Some sections were further upgraded under the Lusignan rule, who kings may have used it as a summer residence. During the rule of Lusignans, the castle was the focus of a four-year struggle between Holy Roman Emperor Frederick II and Regent John d' Ibelin for control of Cyprus.

Much of the castle was dismantled by the Venetians in the 15th century to reduce the up-keeping cost of garrisons.[3]

Architecture

View of the Queen's window (Queen Elanor) in the upper ward.

The castle has three divisions or wards. The lower and middle wards served economic purposes, while the upper ward housed the royal family. The lower ward had the stables and the living quarters for the men-at-arms. The Prince John tower sits on a cliff high above the lower castle.

The upper ward was surrounded by a 1.4 metre-thick Byzantine wall, made of rough masonry. The entrance is through a pointed arch built by the Lusignans. This was protected by a semicircular tower to the east. Within the ward is a courtyard, with twin peaks being situated to either side of it. To the north-east is an extremely ruined kitchen. To the west are the royal apartments, dated by various sources to the 13th or 14th centuries. Although mostly ruined today, this was a structure in the northeast-southwest axis, with a length of 25 m and width of 6 m. It has a basement containing a cistern and two floors. The ground floor has a height of 7 m and a pointed barrel vault. The upper floor is known for its carved windows, one of which is dubbed the Queen's Window.[4][1] These are placed on the western wall, which has a scenic view of the northern coast of Cyprus, especially the plains of Lapithos.[5]

In fiction

Featured in the 1999 novel “Race of Scorpions” by Dorothy Dunnett. The Castle of Saint Hilarion appears in the 2009 action-adventure video game Assassin's Creed: Bloodlines, the 2015 novel "The Lost Treasure of the Templars" by James Becker, and is also featured in the 2016 crypto-thriller The Apocalypse Fire by Dominic Selwood.[6]

gollark: Given a desired item, available items and some recipes, I want a list of crafting tasks which must be performed and the required ingredients.
gollark: Neither!
gollark: Well, obviously you'll have some items available to build stuff from.
gollark: - Checks if the available-items list already contains the item needed. If so, just return that.- If not, checks for recipes to do what is wanted- If one exists, iterate over them (not sure what to *do* with them)- If none exists, we can't do anything, so just return no tasks, no costs and no outputs.
gollark: ```rusttype Items = HashMap<ItemType, u32>;fn quantity(items: &Items, desired: &ItemType) -> u32 { if let Some(available_quantity) = items.get(desired) { *available_quantity } else { 0 }}fn contains(items: &Items, desired: &Item) -> bool { quantity(items, &to_item_type(desired)) >= desired.quantity}fn satisfies(available: &Items, desired: &Items) -> bool { for (typ, desired_quantity) in desired.iter() { if quantity(available, typ) < *desired_quantity { return false } } true}fn to_map(is: &Vec<Item>) -> Items { let out = HashMap::new(); for i in is.iter() { out.entry(to_item_type_clone(i)) .and_modify(|e| { *e += 1 }) .or_insert(0); } out}fn one_item(i: Item) -> Items { let out = HashMap::new(); out.insert(to_item_type(&i), i.quantity); out}#[derive(Debug, Deserialize, PartialEq, Eq, Serialize, Clone)]pub struct CraftingResult { pub tasks: Vec<Recipe>, pub costs: Items, pub outputs: Items}fn solve(desired: Item, available: Items, recipes: &MultiMap<ItemType, Recipe>) -> CraftingResult { if contains(&available, &desired) { // If our available items list already contains the desired item, yay, we can just do nothing return CraftingResult { tasks: vec![], costs: one_item(desired), outputs: one_item(desired) } } if let Some(recipes) = recipes.get_vec(&to_item_type(&desired)) { for recipe in recipes.iter() { let result = solve() // ??? } } else { CraftingResult { tasks: vec![], costs: HashMap::new(), outputs: HashMap::new() } }}```My code, or at least part of it.

References

  1. "St Hilarion Castle". Cypnet. Retrieved 27 March 2018.
  2. Petre 2010, p. 142
  3. Petre 2010, p. 149
  4. Petre 2010, pp. 147-9
  5. Newman 1948, p. 13
  6. Selwood, Dominic. "Crusaders in the Clouds: Author Guided Tour". The Big Thrill. International Thriller Writers. Retrieved 21 November 2016.

Bibliography

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.