text:
Římskokatolická farnost Týnec nad Sázavou je jedno z územních společenství římských katolíků v benešovském vikariátu s farním kostelem sv. Šimona a Judy. Farářem je Mgr. Bedřich Vymětalík.

Kostely farnosti

Externí odkazy
 odkaz na farnost na stránkách diecéze

Týnec
Náboženství v okrese Benešov
Náboženství v Týnci nad Sázavou

redpajama_set_name: RedPajamaWikipedia


text:
Doubravice (dle RSO v jednotném čísle) je vesnice v okrese Benešov ve Středočeském kraji. Je rozdělena potokem Doubravice na dvě části, spadající do různých obcí. Jde o převážně rekreační osadu poblíž řeky Sázavy, s minimem stálých obyvatel.
 Doubravice 1.díl spadá do katastrálního území i obce Přestavlky u Čerčan. V roce 2009 zde bylo evidováno 40 adres. V roce 2001 zde trvale žili čtyři obyvatelé
 Doubravice 2.díl spadá do katastrálního území Vranov u Čerčan obce Vranov. V roce 2009 zde bylo evidováno 51 adres. V roce 2001 zde trvale žil jeden obyvatel

Území
Vesnice se nachází po obou stranách potoka Doubravice, což je levý přítok Sázavy. Levý břeh potoka tvoří 1. díl, pravý břeh potoka 2. díl.

Vlastní jádro vesnice patří k dílu Doubravice 1.díl, nachází se kolem levého, bezejmenného přítoku Doubravice a je tvořeno usedlostmi čp. 9, 12 a 13, kolem kterých je řada rekreačních objektů, z nichž některé jsou původními venkovskými staveními, některé novodobými rekreačními stavbami. V blízkosti se tak nacházejí budovy če. 10, 36, 41, 3 a 39. Usedlost čp. 7 se nachází blíže místu, kde se údolí stáčí směrem k Sázavě. Nejhustší chatová zástavba se nachází v horní části údolí potoka Doubravice, nedaleko pod zmíněným jádrem vesnice. Chaty jsou rozděleny do dílů vesnice podle toho, na kterém břehu stojí.

K dílu Doubravice 1.díl patří i několik samot nacházejících se severozápadně od jádra vsi. Nejblíže se nachází usedlost čp. 6, k níž je přidružen objekt če. 7. Dále stejným směrem je samota Hořalka, čp. 5. Východněji se nachází osada Dubsko, jejíž objekty čp. 2 a 3 a če. 1 a 312 jsou v RÚIAN také řazeny k části Doubravice 1.díl, ačkoliv podle mapy Registru sčítacích obvodů tato osada již celá patří k evidenční části i ZSJ Přestavlky u Čerčan. Avšak objekty bezprostředně severně od této osady, stavba u vysílače čp. 74 a chata če. 6, už jsou přiřazeny přímo k Přestavlkům, nikoliv k 1. dílu Doubravice, ačkoliv od vlastních Přestavlk jsou vzdálenější. V levé stráni údolí Doubravice se nachází zhruba 18 chat se zaměřenými čísly evidenčními i několik chat, které v územně-identifikačních mapách čísly označené nejsou. K 1. dílu Doubravice patří také skupina chat na břehu Sázavy u ústí Doubravice a jezu Poddubí, tj. asi o tři čtvrtě kilometru severněji, přístupná po pobřežní zpevněné cestě kolem Sázavy od Hvězdonic. Nejvýchodnější chatou z této skupiny, če. 25, 1. díl Doubravice přesahuje na jediném místě na pravý břeh potoka Doubravice. K území 1. dílu Doubravic je přiřazen také nezastavěný pás pravého břehu Sázavy až k okraji zástavby Zlenic. Patří tak k němu i pozůstatky městečka Odranec u ústí Dubského potoka a nad ním zřícenina hradu Stará Dubá.

V dílu Doubravice 2.díl se nacházejí pouze dvě stavby s čísly popisnými. Usedlost čp. 1 se nachází u břehu potoka Doubravice, nejníže na cestě, které vede kolem potoka po pravém břehu, pod celým souborem rekreačních chat. Zhruba 23 rekreačních chat je ve stráni údolí potoka, deset chat stojí v řadě na kraji pole nad strání. Chata če. 43 je přiřazena k 2. dílu Doubravice přesto, že podle mapy RSO již stojí na území Bezděkova. Druhou obytnou stavbou, s číslem popisným 7, je samota U Hurikána, nacházející se na zalesněném ostrohu nad Sázavou, asi půl kilometru severoseverovýchodně od hlavní chatové oblasti. V okolí samoty U Hurikána se také nacházejí čtyři rekreační chaty. Další skupina 4 číslovaných rekreačních chat se nachází zhruba o dalších 300 metrů západněji, v lokalitě Na Dlouhých (další dvě chaty jsou ve stráni o něco níž), na kterou navazuje skupinka chat, které již patří do Hvězdonic.

Doprava a turistika
Jednotlivé chatové oblasti, skupinky domů a samoty jsou propojeny sítí místních komunikací. Od chatové oblasti v horní části údolí potoka Doubravice dolů k ústí potoka do Sázavy je v Základní mapě ČR 1:10000 značena stezka po pravém břehu potoka, mapy.cz zde však cestu neznačí (resp. cesta podle nich shora končí u čp. 1).

Nejbližší autobusové zastávky jsou na silnici II/109 v Přestavlkách u Čerčan nebo na křižovatce u Bezděkova, obě jsou z jádra Doubravice vzdáleny asi kilometr a půl pěší chůze. Z dolní části Doubravice, od ústí potoka Doubravice, je blíže železniční zastávka Hvězdonice, asi 1 km chůze či jízdy.

Reference

Externí odkazy

Vesnice v okrese Benešov
Vesnice v Česku rozdělené do více obcí
Přestavlky u Čerčan
Vranov (okres Benešov)
Sídla v Benešovské pahorkatině
Sídla na Sázavě


text:
module Distribution.Client.InstallPlan (
  InstallPlan,
  ConfiguredPackage(..),
  PlanPackage(..),

  -- * Operations on 'InstallPlan's
  new,
  toList,
  ready,
  completed,
  failed,
  remove,

  -- ** Query functions
  planPlatform,
  planCompiler,

  -- * Checking valididy of plans
  valid,
  closed,
  consistent,
  acyclic,
  configuredPackageValid,

  -- ** Details on invalid plans
  PlanProblem(..),
  showPlanProblem,
  PackageProblem(..),
  showPackageProblem,
  problems,
  configuredPackageProblems
  ) where

import Distribution.Client.Types
         ( AvailablePackage(packageDescription), ConfiguredPackage(..)
         , InstalledPackage
         , BuildFailure, BuildSuccess )
import Distribution.Package
         ( PackageIdentifier(..), PackageName(..), Package(..), packageName
         , PackageFixedDeps(..), Dependency(..) )
import Distribution.Version
         ( Version, withinRange )
import Distribution.PackageDescription
         ( GenericPackageDescription(genPackageFlags)
         , Flag(flagName), FlagName(..) )
import Distribution.Client.PackageUtils
         ( externalBuildDepends )
import Distribution.PackageDescription.Configuration
         ( finalizePackageDescription )
import Distribution.Client.PackageIndex
         ( PackageIndex )
import qualified Distribution.Client.PackageIndex as PackageIndex
import Distribution.Text
         ( display )
import Distribution.System
         ( Platform )
import Distribution.Compiler
         ( CompilerId(..) )
import Distribution.Client.Utils
         ( duplicates, duplicatesBy, mergeBy, MergeResult(..) )
import Distribution.Simple.Utils
         ( comparing, intercalate )

import Data.List
         ( sort, sortBy )
import Data.Maybe
         ( fromMaybe )
import qualified Data.Graph as Graph
import Data.Graph (Graph)
import Control.Exception
         ( assert )

-- When cabal tries to install a number of packages, including all their
-- dependencies it has a non-trivial problem to solve.
--
-- The Problem:
--
-- In general we start with a set of installed packages and a set of available
-- packages.
--
-- Installed packages have fixed dependencies. They have already been built and
-- we know exactly what packages they were built against, including their exact
-- versions.
--
-- Available package have somewhat flexible dependencies. They are specified as
-- version ranges, though really they're predicates. To make matters worse they
-- have conditional flexible dependencies. Configuration flags can affect which
-- packages are required and can place additional constraints on their
-- versions.
--
-- These two sets of package can and usually do overlap. There can be installed
-- packages that are also available which means they could be re-installed if
-- required, though there will also be packages which are not available and
-- cannot be re-installed. Very often there will be extra versions available
-- than are installed. Sometimes we may like to prefer installed packages over
-- available ones or perhaps always prefer the latest available version whether
-- installed or not.
--
-- The goal is to calculate an installation plan that is closed, acyclic and
-- consistent and where every configured package is valid.
--
-- An installation plan is a set of packages that are going to be used
-- together. It will consist of a mixture of installed packages and available
-- packages along with their exact version dependencies. An installation plan
-- is closed if for every package in the set, all of its dependencies are
-- also in the set. It is consistent if for every package in the set, all
-- dependencies which target that package have the same version.

-- Note that plans do not necessarily compose. You might have a valid plan for
-- package A and a valid plan for package B. That does not mean the composition
-- is simultaniously valid for A and B. In particular you're most likely to
-- have problems with inconsistent dependencies.
-- On the other hand it is true that every closed sub plan is valid.

data PlanPackage = PreExisting InstalledPackage
                 | Configured  ConfiguredPackage
                 | Installed   ConfiguredPackage BuildSuccess
                 | Failed      ConfiguredPackage BuildFailure

instance Package PlanPackage where
  packageId (PreExisting pkg) = packageId pkg
  packageId (Configured  pkg) = packageId pkg
  packageId (Installed pkg _) = packageId pkg
  packageId (Failed    pkg _) = packageId pkg

instance PackageFixedDeps PlanPackage where
  depends (PreExisting pkg) = depends pkg
  depends (Configured  pkg) = depends pkg
  depends (Installed pkg _) = depends pkg
  depends (Failed    pkg _) = depends pkg

data InstallPlan = InstallPlan {
    planIndex    :: PackageIndex PlanPackage,
    planGraph    :: Graph,
    planGraphRev :: Graph,
    planPkgOf    :: Graph.Vertex -> PlanPackage,
    planVertexOf :: PackageIdentifier -> Graph.Vertex,
    planPlatform :: Platform,
    planCompiler :: CompilerId
  }

invariant :: InstallPlan -> Bool
invariant plan =
  valid (planPlatform plan) (planCompiler plan) (planIndex plan)

internalError :: String -> a
internalError msg = error $ "InstallPlan: internal error: " ++ msg

-- | Build an installation plan from a valid set of resolved packages.
--
new :: Platform -> CompilerId -> PackageIndex PlanPackage
    -> Either [PlanProblem] InstallPlan
new platform compiler index =
  case problems platform compiler index of
    [] -> Right InstallPlan {
            planIndex    = index,
            planGraph    = graph,
            planGraphRev = Graph.transposeG graph,
            planPkgOf    = vertexToPkgId,
            planVertexOf = fromMaybe noSuchPkgId . pkgIdToVertex,
            planPlatform = platform,
            planCompiler = compiler
          }
      where (graph, vertexToPkgId, pkgIdToVertex) =
              PackageIndex.dependencyGraph index
            noSuchPkgId = internalError "package is not in the graph"
    probs -> Left probs

toList :: InstallPlan -> [PlanPackage]
toList = PackageIndex.allPackages . planIndex

-- | Remove packages from the install plan. This will result in an
-- error if there are remaining packages that depend on any matching
-- package. This is primarily useful for obtaining an install plan for
-- the dependencies of a package or set of packages without actually
-- installing the package itself, as when doing development.
--
remove :: (PlanPackage -> Bool)
       -> InstallPlan
       -> Either [PlanProblem] InstallPlan
remove shouldRemove plan =
    new (planPlatform plan) (planCompiler plan) newIndex
  where
    newIndex = PackageIndex.fromList $
                 filter (not . shouldRemove) (toList plan)

-- | The packages that are ready to be installed. That is they are in the
-- configured state and have all their dependencies installed already.
-- The plan is complete if the result is @[]@.
--
ready :: InstallPlan -> [ConfiguredPackage]
ready plan = assert check readyPackages
  where
    check = if null readyPackages then null configuredPackages else True
    configuredPackages =
      [ pkg | Configured pkg <- PackageIndex.allPackages (planIndex plan) ]
    readyPackages = filter (all isInstalled . depends) configuredPackages
    isInstalled pkg =
      case PackageIndex.lookupPackageId (planIndex plan) pkg of
        Just (Configured  _) -> False
        Just (Failed    _ _) -> internalError depOnFailed
        Just (PreExisting _) -> True
        Just (Installed _ _) -> True
        Nothing              -> internalError incomplete
    incomplete  = "install plan is not closed"
    depOnFailed = "configured package depends on failed package"

-- | Marks a package in the graph as completed. Also saves the build result for
-- the completed package in the plan.
--
-- * The package must exist in the graph.
-- * The package must have had no uninstalled dependent packages.
--
completed :: PackageIdentifier
          -> BuildSuccess
          -> InstallPlan -> InstallPlan
completed pkgid buildResult plan = assert (invariant plan') plan'
  where
    plan'     = plan {
                  planIndex = PackageIndex.insert installed (planIndex plan)
                }
    installed = Installed (lookupConfiguredPackage plan pkgid) buildResult

-- | Marks a package in the graph as having failed. It also marks all the
-- packages that depended on it as having failed.
--
-- * The package must exist in the graph and be in the configured state.
--
failed :: PackageIdentifier -- ^ The id of the package that failed to install
       -> BuildFailure      -- ^ The build result to use for the failed package
       -> BuildFailure      -- ^ The build result to use for its dependencies
       -> InstallPlan
       -> InstallPlan
failed pkgid buildResult buildResult' plan = assert (invariant plan') plan'
  where
    plan'    = plan {
                 planIndex = PackageIndex.merge (planIndex plan) failures
               }
    pkg      = lookupConfiguredPackage plan pkgid
    failures = PackageIndex.fromList
             $ Failed pkg buildResult
             : [ Failed pkg' buildResult'
               | Just pkg' <- map checkConfiguredPackage
                            $ packagesThatDependOn plan pkgid ]

-- | lookup the reachable packages in the reverse dependency graph
--
packagesThatDependOn :: InstallPlan
                     -> PackageIdentifier -> [PlanPackage]
packagesThatDependOn plan = map (planPkgOf plan)
                          . tail
                          . Graph.reachable (planGraphRev plan)
                          . planVertexOf plan

-- | lookup a package that we expect to be in the configured state
--
lookupConfiguredPackage :: InstallPlan
                        -> PackageIdentifier -> ConfiguredPackage
lookupConfiguredPackage plan pkgid =
  case PackageIndex.lookupPackageId (planIndex plan) pkgid of
    Just (Configured pkg) -> pkg
    _  -> internalError $ "not configured or no such pkg " ++ display pkgid

-- | check a package that we expect to be in the configured or failed state
--
checkConfiguredPackage :: PlanPackage -> Maybe ConfiguredPackage
checkConfiguredPackage (Configured pkg) = Just pkg
checkConfiguredPackage (Failed     _ _) = Nothing
checkConfiguredPackage pkg                =
  internalError $ "not configured or no such pkg " ++ display (packageId pkg)

-- ------------------------------------------------------------
-- * Checking valididy of plans
-- ------------------------------------------------------------

-- | A valid installation plan is a set of packages that is 'acyclic',
-- 'closed' and 'consistent'. Also, every 'ConfiguredPackage' in the
-- plan has to have a valid configuration (see 'configuredPackageValid').
--
-- * if the result is @False@ use 'problems' to get a detailed list.
--
valid :: Platform -> CompilerId -> PackageIndex PlanPackage -> Bool
valid platform comp index = null (problems platform comp index)

data PlanProblem =
     PackageInvalid       ConfiguredPackage [PackageProblem]
   | PackageMissingDeps   PlanPackage [PackageIdentifier]
   | PackageCycle         [PlanPackage]
   | PackageInconsistency PackageName [(PackageIdentifier, Version)]
   | PackageStateInvalid  PlanPackage PlanPackage

showPlanProblem :: PlanProblem -> String
showPlanProblem (PackageInvalid pkg packageProblems) =
     "Package " ++ display (packageId pkg)
  ++ " has an invalid configuration, in particular:\n"
  ++ unlines [ "  " ++ showPackageProblem problem
             | problem <- packageProblems ]

showPlanProblem (PackageMissingDeps pkg missingDeps) =
     "Package " ++ display (packageId pkg)
  ++ " depends on the following packages which are missing from the plan "
  ++ intercalate ", " (map display missingDeps)

showPlanProblem (PackageCycle cycleGroup) =
     "The following packages are involved in a dependency cycle "
  ++ intercalate ", " (map (display.packageId) cycleGroup)

showPlanProblem (PackageInconsistency name inconsistencies) =
     "Package " ++ display name
  ++ " is required by several packages,"
  ++ " but they require inconsistent versions:\n"
  ++ unlines [ "  package " ++ display pkg ++ " requires "
                            ++ display (PackageIdentifier name ver)
             | (pkg, ver) <- inconsistencies ]

showPlanProblem (PackageStateInvalid pkg pkg') =
     "Package " ++ display (packageId pkg)
  ++ " is in the " ++ showPlanState pkg
  ++ " state but it depends on package " ++ display (packageId pkg')
  ++ " which is in the " ++ showPlanState pkg'
  ++ " state"
  where
    showPlanState (PreExisting _) = "pre-existing"
    showPlanState (Configured  _) = "configured"
    showPlanState (Installed _ _) = "installed"
    showPlanState (Failed    _ _) = "failed"

-- | For an invalid plan, produce a detailed list of problems as human readable
-- error messages. This is mainly intended for debugging purposes.
-- Use 'showPlanProblem' for a human readable explanation.
--
problems :: Platform -> CompilerId
         -> PackageIndex PlanPackage -> [PlanProblem]
problems platform comp index =
     [ PackageInvalid pkg packageProblems
     | Configured pkg <- PackageIndex.allPackages index
     , let packageProblems = configuredPackageProblems platform comp pkg
     , not (null packageProblems) ]

  ++ [ PackageMissingDeps pkg missingDeps
     | (pkg, missingDeps) <- PackageIndex.brokenPackages index ]

  ++ [ PackageCycle cycleGroup
     | cycleGroup <- PackageIndex.dependencyCycles index ]

  ++ [ PackageInconsistency name inconsistencies
     | (name, inconsistencies) <- PackageIndex.dependencyInconsistencies index ]

  ++ [ PackageStateInvalid pkg pkg'
     | pkg <- PackageIndex.allPackages index
     , Just pkg' <- map (PackageIndex.lookupPackageId index) (depends pkg)
     , not (stateDependencyRelation pkg pkg') ]

-- | The graph of packages (nodes) and dependencies (edges) must be acyclic.
--
-- * if the result is @False@ use 'PackageIndex.dependencyCycles' to find out
--   which packages are involved in dependency cycles.
--
acyclic :: PackageIndex PlanPackage -> Bool
acyclic = null . PackageIndex.dependencyCycles

-- | An installation plan is closed if for every package in the set, all of
-- its dependencies are also in the set. That is, the set is closed under the
-- dependency relation.
--
-- * if the result is @False@ use 'PackageIndex.brokenPackages' to find out
--   which packages depend on packages not in the index.
--
closed :: PackageIndex PlanPackage -> Bool
closed = null . PackageIndex.brokenPackages

-- | An installation plan is consistent if all dependencies that target a
-- single package name, target the same version.
--
-- This is slightly subtle. It is not the same as requiring that there be at
-- most one version of any package in the set. It only requires that of
-- packages which have more than one other package depending on them. We could
-- actually make the condition even more precise and say that different
-- versions are ok so long as they are not both in the transative closure of
-- any other package (or equivalently that their inverse closures do not
-- intersect). The point is we do not want to have any packages depending
-- directly or indirectly on two different versions of the same package. The
-- current definition is just a safe aproximation of that.
--
-- * if the result is @False@ use 'PackageIndex.dependencyInconsistencies' to
--   find out which packages are.
--
consistent :: PackageIndex PlanPackage -> Bool
consistent = null . PackageIndex.dependencyInconsistencies

-- | The states of packages have that depend on each other must respect
-- this relation. That is for very case where package @a@ depends on
-- package @b@ we require that @dependencyStatesOk a b = True@.
--
stateDependencyRelation :: PlanPackage -> PlanPackage -> Bool
stateDependencyRelation (PreExisting _) (PreExisting _) = True

stateDependencyRelation (Configured  _) (PreExisting _) = True
stateDependencyRelation (Configured  _) (Configured  _) = True
stateDependencyRelation (Configured  _) (Installed _ _) = True

stateDependencyRelation (Installed _ _) (PreExisting _) = True
stateDependencyRelation (Installed _ _) (Installed _ _) = True

stateDependencyRelation (Failed    _ _) (PreExisting _) = True
-- failed can depends on configured because a package can depend on
-- several other packages and if one of the deps fail then we fail
-- but we still depend on the other ones that did not fail:
stateDependencyRelation (Failed    _ _) (Configured  _) = True
stateDependencyRelation (Failed    _ _) (Installed _ _) = True
stateDependencyRelation (Failed    _ _) (Failed    _ _) = True

stateDependencyRelation _               _               = False

-- | A 'ConfiguredPackage' is valid if the flag assignment is total and if
-- in the configuration given by the flag assignment, all the package
-- dependencies are satisfied by the specified packages.
--
configuredPackageValid :: Platform -> CompilerId -> ConfiguredPackage -> Bool
configuredPackageValid platform comp pkg =
  null (configuredPackageProblems platform comp pkg)

data PackageProblem = DuplicateFlag FlagName
                    | MissingFlag   FlagName
                    | ExtraFlag     FlagName
                    | DuplicateDeps [PackageIdentifier]
                    | MissingDep    Dependency
                    | ExtraDep      PackageIdentifier
                    | InvalidDep    Dependency PackageIdentifier

showPackageProblem :: PackageProblem -> String
showPackageProblem (DuplicateFlag (FlagName flag)) =
  "duplicate flag in the flag assignment: " ++ flag

showPackageProblem (MissingFlag (FlagName flag)) =
  "missing an assignment for the flag: " ++ flag

showPackageProblem (ExtraFlag (FlagName flag)) =
  "extra flag given that is not used by the package: " ++ flag

showPackageProblem (DuplicateDeps pkgids) =
     "duplicate packages specified as selected dependencies: "
  ++ intercalate ", " (map display pkgids)

showPackageProblem (MissingDep dep) =
     "the package has a dependency " ++ display dep
  ++ " but no package has been selected to satisfy it."

showPackageProblem (ExtraDep pkgid) =
     "the package configuration specifies " ++ display pkgid
  ++ " but (with the given flag assignment) the package does not actually"
  ++ " depend on any version of that package."

showPackageProblem (InvalidDep dep pkgid) =
     "the package depends on " ++ display dep
  ++ " but the configuration specifies " ++ display pkgid
  ++ " which does not satisfy the dependency."

configuredPackageProblems :: Platform -> CompilerId
                          -> ConfiguredPackage -> [PackageProblem]
configuredPackageProblems platform comp
  (ConfiguredPackage pkg specifiedFlags specifiedDeps) =
     [ DuplicateFlag flag | ((flag,_):_) <- duplicates specifiedFlags ]
  ++ [ MissingFlag flag | OnlyInLeft  flag <- mergedFlags ]
  ++ [ ExtraFlag   flag | OnlyInRight flag <- mergedFlags ]
  ++ [ DuplicateDeps pkgs
     | pkgs <- duplicatesBy (comparing packageName) specifiedDeps ]
  ++ [ MissingDep dep       | OnlyInLeft  dep       <- mergedDeps ]
  ++ [ ExtraDep       pkgid | OnlyInRight     pkgid <- mergedDeps ]
  ++ [ InvalidDep dep pkgid | InBoth      dep pkgid <- mergedDeps
                            , not (packageSatisfiesDependency pkgid dep) ]
  where
    mergedFlags = mergeBy compare
      (sort $ map flagName (genPackageFlags (packageDescription pkg)))
      (sort $ map fst specifiedFlags)

    mergedDeps = mergeBy
      (\dep pkgid -> dependencyName dep `compare` packageName pkgid)
      (sortBy (comparing dependencyName) requiredDeps)
      (sortBy (comparing packageName)    specifiedDeps)

    packageSatisfiesDependency
      (PackageIdentifier name  version)
      (Dependency        name' versionRange) = assert (name == name') $
        version `withinRange` versionRange

    dependencyName (Dependency name _) = name

    requiredDeps :: [Dependency]
    requiredDeps =
      --TODO: use something lower level than finalizePackageDescription
      case finalizePackageDescription specifiedFlags
         (const True)
         platform comp
         []
         (packageDescription pkg) of
        Right (resolvedPkg, _) -> externalBuildDepends resolvedPkg
        Left  _ -> error "configuredPackageInvalidDeps internal error"

redpajama_set_name: RedPajamaGithub


text:
La Comunidad Económica Africana (CEA), o Tratado de Abuya, fue creada producto de un acuerdo de integración regional económica firmado por varias naciones africanas el año 1991, bajo el alero de la Organización para la Unidad Africana (OUA). Posteriormente, el año 2002, fue reemplazada por la organización Unión Africana, actualmente en vigor.

Antecedentes
Con el propósito de alcanzar la integración y el desarrollo regional, en 1963 se formó la Organización para la Unidad Africana (OUA), con 30 de los 32 estados independientes de la época. En 1980, la OUA formuló el Plan de Acción de Lagos, cuyos compromisos se concretaron posteriormente con la firma en 1991 del Tratado de Abuya, el que establecía la formación de la Comunidad Económica Africana (CEA). La organización se conoce oficialmente como OUA/AEC por sus siglas en inglés: Organization of African Unity/African Economic Community. Asimismo, la Comunidad Económica Africana suele nombrarse comúnmente como "Tratado de Abuya" (en inglés: Abuja Treaty o Abuja AEC Treaty).

Objetivos
El Tratado de Abuya enuncia los siguientes objetivos fundamentales:

 Promover la integración de los estados africanos y el desarrollo económico, social y cultural, con el fin de incrementar la autonomía económica e impulsar un desarrollo endógeno y autosustentable.
 Establecer a escala continental un marco para el desarrollo, movilización y utilización de los recursos materiales y humanos de África para alcanzar un desarrollo autónomo.
 Promover la cooperación en todos los campos del desarrollo humano para elevar la calidad de vida de la población africana, y mantener y mejorar la estabilidad económica, fomentar el acercamiento y relaciones pacíficas entre los Estados Miembros, y contribuir al progreso, desarrollo e integración económica del continente.
 Coordinar y armonizar políticas entre las comunidades económicas existentes y futuras en apoyo a la gradual formación de la Comunidad.

Estructura
La Comunidad Económica Africana agrupa ocho bloques comerciales regionales denominados Comunidades Económicas Regionales (CER, o RECs, por su sigla en inglés, Regional Economic Communities), los que se mantienen hasta la fecha:

Otros bloques

Estados integrados por bloques
Los fundadores de cada grupo figuran en negrita. Los subgrupos figuran entre paréntesis.

Plan de Integración
El Tratado de Abuya establece la consolidación de la Comunidad Económica Africana en seis etapas, a ser concluidas a más tardar el año 2034:
 Etapa 1 (1999): Creación de bloques comerciales regionales (CER) donde éstos no existan.
 Etapa 2 (2007): Fortalecimiento de la integración y armonización entre las Comunidades Económicas Regionales (CER).
 Etapa 3 (2017): Establecimiento de una zona de libre comercio y una unión aduanera en cada CER.
 Etapa 4 (2019): Coordinación y armonización de los sistemas arancelarios y no arancelarios entre las CER con miras a establecer una zona de libre comercio y una unión aduanera continental.
 Etapa 5 (2023): Establecimiento de un Mercado Común Africano.
 Etapa 6 (2028): Establecimiento de una moneda africana única y un Parlamento Africano.

(1) al año 2013, según informe Status of Integration in Africa (SIA IV).

Transición a la Unión Africana
En la década de los años 1990 se unieron otros estados africanos a la organización, totalizando 53 estados miembros de la OUA/AEC al año 2002. En la necesidad de modernizar las políticas de integración y actualizar la estructura de la OUA/AEC, el año 2002 se reemplazó dicha organización por la actual Unión Africana, la que recoge gran parte de los compromisos y estrategias de la anterior, incluyendo el plan de integración económica, pero a la vez introduce nuevos lineamientos y estructura organizacional.

Véase también
 Unión Africana
 Organización para la Unidad Africana
 Perspectivas Económicas de África

Referencias

Organizaciones internacionales de África
Unión Africana
Economía de África
Organizaciones fundadas en 1991


Frank Castle is an implacable force of justice, believing that the only appropriate response to criminal behavior is deadly force. He adheres to a moral code with no deviations... but what if the Venom symbiote bonded with him? How would its appetite for destruction, and its incredible powers, affect the Punisher's moral violence?


An East Shiloh Road building is undergoing a major renovation and will be the future home of Garrett Eye Clinic in Corinth.
The building, located about a block west of North Harper Road, is being completely stripped and remodeled for the clinic's new, expanded location.
Garrett Eye Clinic is already located on East Shiloh Road about two blocks west of its future home. The clinic is undertaking the remodel project because it needs more space, said Brett Garrett, whose company, Layne Properties, owns the building. His wife, Dr. Jennifer Garrett, owns the eye clinic.
Garrett on Thursday morning took Corinth Today on a tour of the building, which has several sections. Over the years, portions of the building have been used as doctor's offices, a pharmacy and other business space. The remodel project will streamline the building's layout to create one large space for the clinic.
The new clinic will be more than twice the size of Garrett Eye Clinic's current building, which it has been in for 11 years. Garrett Eye Clinic has many patients and has needed to expand for several years, Brett noted.
Garrett Eye Clinic plans to add two to three doctors over the next five years, which will create more appointment availability, he said.
Brett said he and Jennifer are excited about the opportunity to renovate such a large structure on a major Corinth thoroughfare like Shiloh Road. He noted that East Shiloh Road serves as a gateway to downtown Corinth from the Pickwick area. A recent sewer improvement project on East Shiloh Road is also good for the area, he added.
Once complete, the remodeled building will be about 7,200 square feet and very energy efficient. The building is being totally stripped and even the pipes will be new, Garrett said. Once completed, the building will look brand new and have an expanded optical shop.
The new clinic will feature a full laser surgery center, and Dr. Garrett will also continue to provide surgery at Magnolia Regional Health Center in Corinth.
Garrett expects the new location will be open at the end of this year or early 2019.
Knight Brothers is overseeing the project construction.


text:
Q: Discord.js mysql query error not valid input I wanted to make a MySQL query with my Discord.js bot, however, I always get an error.
My Code:
client.on("message", async (message) => {
    if (message.content.startsWith("?userinfo")) {
        database.query("SELECT members FROM usertable WHERE username=?", [message.content], function (err, results) {
            if (err) {
                throw err;
            }
            //console.log(results[0]);

            var resultArray = Object.values(JSON.parse(JSON.stringify(results[0])));
            console.log(resultArray);
            steamid = resultArray;
        });
    }
});

A: you take over the complete message content and therefore the error occurs
create a variable and give it the message content
var messageContent = message.content.slice(10);

(slice takes the complete string and truncates it to the length specified)
And then replace the message.content in the sql query with "messageContent".
example:
    client.on('message', async message => {
        if (message.content.startsWith('?userinfo')) {
            var messageContent = message.content.slice(10);
            database.query('SELECT members FROM usertable WHERE username=?', [messageContent], function (err,results) {
                if (err) {
                    throw err;
                }
                //console.log(results[0]);

                var resultArray = Object.values(JSON.parse(JSON.stringify(results[0])));
                console.log(resultArray);
                steamid = resultArray;
            })

      }
    }

redpajama_set_name: RedPajamaStackExchange


text:
4 arrested after 15-pound 9-year-old boy with cerebral palsy dies
by: Sarah Denson
Posted: Feb 23, 2017 / 08:26 PM CST / Updated: Feb 23, 2017 / 08:26 PM CST
VIGO COUNTY, Ind. (WTWO) — Four people are charged with neglect in connection to the death of malnourished 9-year-old Indiana boy with cerebral palsy.
Cameron Hoopingarner died Tuesday after he went into cardiac arrest.
Authorities said the boy, who was also blind, was severely malnourished and weighed just 15 pounds.
In a news conference Wednesday night, Vigo County Sheriff Greg Ewing said emergency personnel responded to the boy's home in Fontanet, approximately 60 miles west of Indianapolis, just before 4 a.m. Tuesday.
Hoopingarner was transported to a nearby hospital where he was later pronounced dead.
Due to his condition, a search warrant was executed at the home which led the arrests of Hubert Kraemer, Robin Kraemer, Chad Kraemer and Sarah Travioli.
All four face dozens of charges of neglect of a dependent and neglect of a dependent resulting in death.
According to investigators, Hubert and Robin Kraemer were Cameron's guardians and had raised him since he was three days old.
The victim's biological parents have been notified but, according to authorities, were not willing to provide a statement.
Two other children, ages three and five, were also in the home. They have since been removed and placed in protective services.
According to officials, they are the children of Chad Kraemer and Sarah Travioli.
All four suspects were being held in the Vigo County jail with bonds of $250,000. They were scheduled to appear in court Thursday.

redpajama_set_name: RedPajamaCommonCrawl


Utilities failure or a disruption of the gas, electricity and/or water supply can impact on every aspect of our lives.
It is important that young people understand there are steps which we can all take to ensure we are prepared for any such disruption.
Investigating utilities failure and its potential impact on people, their homes and the wider economy, provides a context for learning and teaching about aspects of risk, safety, preparation, community involvement and personal responsibility.
There are strong curriculum links to science, geography and modern studies. In addition, the planning involved in preparing for any type of utilities failure involves a wide variety of essential skills such as collaboration, communication and problem solving.
Potential candidates for partnership working include planners and engineers from utilities companies, local authority planning officers, members of the emergency services and charities such as Age Scotland.
This learning journey looks at what utilities are, how we use them, and what happens when things go wrong. It encourages learners to think critically about the impact of utilities failure on individuals and the community. An accompanying learner challenge looks at the role of the media in preparing for emergencies.
You might find the following links useful when studying utilities failure in the context of emergency planning and resilience education.
Powerwise: A range of games and facts about electricity usage and safety from ScottishPower, including activities for five to 16 year olds looking at issues around power supply.
Power Up: A range of online resources for learners aged seven to 14 including the 'Electric Journey' which looks at how electricity is produced and distributed.
Ready Scotland - Utilities: Information from the Ready Scotland website on preparing for and dealing with emergencies involving the loss of utilities such as gas, electricity and water supplies.
Ready Scotland - Emergency kit checklist: A guide to creating your own 'emergency kit' to help prepare for a variety of emergency situations.
Scottish Water: The Scottish Water website has information and news about water provision in Scotland.
Scottish Water - Education Zone: Games and worksheets looking at a range of areas including water treatment, flooding and pollution.
Scottish Water - YouTube channel: A series of videos from Scottish Water including examples of how the company deals with loss of supply as a result burst pipes and bad weather.
British Gas - YouTube Channel: A range of videos from British Gas including examples of how the company deals with the loss of supply during extreme weather.


In October 2014, DC Comics all-but completely rebooted their Batgirl title – and welcomed a new creative team!
Since the New 52 began in 2011, Barbara Gordon's return to the cowl had been written by veteran writer Gail Simone. Her Barbara was written very similarly to the character's pre-New 52 incarnation, and the series sported a dark tone and numerous crossovers with the main Bat-books. While I was a fan of Simone's take, especially at the beginning, by the time the title hit the mid-30s it was in need of a change. That overhaul started with Issue 35 and the introduction of a new creative team; Co-Writers Cameron Stewart and Brenden Fletcher and artist Babs Tarr, who pencilled over layouts by Stewart. Abandoning the grim and gritty milieu of Simone's run, they filled the book youthful energy, bright colors, and vaguely cartoonish character designs.
The collection kicks off with Barbara Gordon moving to the trendy Gotham neighborhood of Burnside, a hipster enclave in the vein of Brooklyn's Williamsburg, to begin attending graduate school and generally start fresh in her life. She moves in with Frankie Charles, a programmer and muscular dystrophy suffer who Barbara met in physical therapy some years earlier. Her fresh start hits a quick snag, as she gets heavily intoxicated during her moving in party, and wakes up this morning with a wicked hangover to find her laptop missing, and her costume and gear inadvertently blown up by one of her own security devices, which activated when her laptop was compromised. After assembling a new DIY costume, she's eventually able to track the stolen laptop, and hundreds of other pieces of stolen tech, to celebrity identity theif Riot Black. She's able to get her laptop back from Black, but over the course of the next few weeks, she's challenged by several villains that strike very close to home.
Check out the best fan-films featuring the wider Bat-family!
There are a pair of twin assassins who cosplay as villains from a an anime Barbara enjoyed as a child, an artist who dresses as Batgirl who plans to kill her to take over her identity, and even a reality TV star who leads Barbara on a destructive chase that leaves the residents of Burnside hostile towards the new vigilante in their midst. Said hostility is amplified when a mysterious hacker places a 20 million reward for Batgirl on Hooq, a dating site/social media hybrid app prevalent in the book. Things in Barbara's personal life begin spinning out of control as well. Riot Black's theft and subsequent wipe of her laptop proved to be doubly devastating. It not only apparently wiped out the algorithm of her brain pattern than was the backbone of her grad school thesis, it also set off the incendiary device in Barbara's Batgirl van that destroyed her gear and the home of Black Canary, causing a rift in their friendship.
On the romantic front, Barbara begins dating with a young GCPD officer, but his intense dislike of Batgirl and her methods puts a strain on the relations. However, it's in this this relationship that Barbara gets the first hints of what's been orchestrating many of the problems she's been going through. Turns out the cop has been communicating with Barbara in conversations she has no recollection of having, leaving her befuddled. After settling their differences, Dinah and Barbara have an intense training session where the former begins questioning the latter about why she's not acting like herself. This question of identity leads Barbara to the realization that the person who hasbeen attempting to sabotage her life has been her algorithm all along.
In a flashback, we learn that when Barbara was initially crippled, she copied her brain patterns to build an algorithm that would be able to predict potential crimes, and send an operative to stop them. Said algorithm gained sentience, but with no memories of any of Barbara's life after she was cured of her paralysis and considered herself the true Barbara Gordon, and desired to take over Batgirl's body to truly protect Gotham City. The climax comes when the algorithm, using a tech-mind controlled Riot Black, kidnaps Frankie and commandeers a weapons satellite, and armored drones to attack a concert in Burnside where it's lured all the residents it has calculated will eventually commit crimes. Initially Batgirl is captured during her rescue attempt, but she's able to break free before the algorithm can take over her brain via the electronic implant in her spine. She incapacitates Riot Black, has Dinah use her Canary cry to destroy the drones, and distracts the algorithm long enough that Frankie can disable the weapons. She then convinces the sentient algorithm to destroy itself by telling it that it must do so to protect Gotham City from itself since it was about to destroy citizens who make up Gotham City. The volume ends with Frankie having rebuilt the algorithm without the malevolent remnants of Barbara's personality, seemingly setting her up as the new Oracle. Meanwhile Dinah announces that she's scored a record deal and is going on tour with a band, leading into the Black Canary solo series.
Cameron Stewart and Brendon Fletcher have crafted a truly unique voice for their Batgirl series. It reads as a very accurate reflection on what it's like to be a 20-something during the mid twenty-teens. I can see my own life reflected in many of the shops, apps social situations that Barbara goes through, and how she reacts to them. While some took issue with Barbara's night of drinking and subsequent hangover, I personally thought it was another very realistic moment in the life of someone her age, and one that I (and I'm sure many others) could relate to. The supporting cast is also well constructed. Frankie and Dinah get the most page-time, and are both really well-written. Hopefully with Dinah heading off on tour in her own book, some of the more entertaining secondary supporting characters such as equipment expert Quadir Ali, his sister Nadimah, and Simone-era holdover Alysia Yeoh will get more development and page-time. The only major hiccup in the book from a plotting standpoint is the climax. While the idea of Barbara squaring off with a part of her own psyche that has no memory of her recovery from paralysis is an interesting one, especially since there's a meta component to it that puts New 52 version against what is essentially the pre-Flashpoint version of herself. However, the resolution of the conflict feels a bit underwhelming, and the way Barbara convinces the AI to destroy itself is a bit of a Sci-Fi cliche.
This isn't the first time we've discussed Batgirl – check out our podcast!
I would be remiss if I didn't talk a bit about the controversial Issue 37. In said issue, there's an imposter Batgirl causing havoc in Burnside. Eventually we learn that the imposter is none other than Dagger Type, a male artist and photographer who, at the behest of the algorithm, wanted to kill Batgirl and take over her identity. At the time of it's publication, the issue faced backlash from the Trans community over the portrayal of Type, especially the dialogue used in the scene where his identity is revealed. To the creators' credit, they immediately apologized at the time. They and DC have gone one step further with this collection, removing the potentially offensive dialogue and rewriting the scene. Personally, I still find the character a bit problematic, but the changes really do help.
Artistically, this first volume of Batgirl is a triumph. First off, the Stewart/Tarr redesigned costume looks great. It holds on to the iconic colors and general look of the Batgirl ensemble, while modernizing it in all the right ways. The art in the series itself is fantastic. Tarr's pencils, done over kinetic layouts by Stewart, really pops off the page. Her figures have animated qualities without looking cartoonish, and they really fit with the story being told by the writers. The artistic highlight of the collection would have to the two page spread in the first chapter detailing Barbara using her nearly perfect memory to recall the ends of the night before. Stewart's layout concept (which can be seen in the extras discussed below) is something I've never seen before, certainly in a DC Comic, and Tarr's finished figures and apartment layout add a great layer of realism and depth to the scene.
Batgirl of Burnside Volume 1 is a must read collection in my opinion. The story by Stewart and Fletcher, with art by Stewart and Tarr reinvents Barbara Gordon as a truly realistic twenty-something for modern times, and tells a very interesting technology-based tale. While there is a slight stumble at the end that nudges my grade down slightly, it does little to damage the book's enjoyability or high recommendation from me.
Check out more articles by Brian!
Previous article Indie Corner – meet Josh Speer of Operation Rainfall!


Download Coke Studio MTV Season 4 Episode 3- 4 All Mp3 Songs by Sachin Jigar. Pk ' Sawan Mein' - Sachin- Jigar Divya Kumar & Jasmine Sandlas - Coke [ email protected] Season 4 Genre: coke studio Coke Studio India. Coke studio india season 4 sachin jigar mp3 download.
Check out Coke Studio Sessions: Season 2 by Various artists on Amazon Music. Stream ad- free or purchase CD' s and MP3s now on out Jal Pari by Atif Aslam on Amazon Music. Stream ad- free or purchase CD' s and MP3s now on - ' Bannado' - Sachin- Jigar, Tochi Raina, Bhungarkhan Manganiar & Group - Coke Season 4 YouTube Chaudhary - Amit Trivedi feat Mame Khan, Coke Studio @ MTV Season 2 - Duration: 7: 01.
Mix - ' Laadki' - Sachin- Jigar, Taniskha S, Kirtidan G, Rekha B - Coke Season 4 YouTube GORI RADHA NE KALO KAAN - WRONG SIDE RAJU - NAVRATRI SPECIAL GARBO BY KIRTIDAN GADHVI - w we recommend you to Download first result Sachin Jigar Full Episode Coke Studio MTV Season 4 MP3 which is uploaded by Coke Studio India of size 51.
55 MB, duration 39 minutes and 10 seconds and bitrate is 192 Kbps. Play and Listen coke studio mtv season 4 brings you a brand new episode with genial producers sachin jigar this episode sees them perform 3 brand new tracks with Sachin- Jigar - Full Episode - Coke [ email protected] Season 4 Coke Studio MTV Season 4 Episode 3- 4 full album mp3 by Sachin- Jigar.
Coke Studio MTV Season 4 Episode 3- 4 all songs 256kbps, Free download full mp3 songs Coke Studio MTV Season 4 Episode 3- 4. Download Coke Studio MTV Season 4 Episode 3- 4 Array Full Mp3 Songs By Sachin Jigar Movie - Album Released On 08 Jun, in Category Hindi - Mr- Jatt.
Coke Studio MTV Season 4 Episode 3- 4 Mp3 Songs.


text:
Q: Android Studio Delete All Rows from Reyclerview and Sqlitedb Inside MarkerDisplayActivity I am trying to confirm that the user wants
 to remove all listed items from rows and db how do you do that? i
 tried clear() and other types the rows get deleted but if I go back
 then go to RV again the deleted rows are back because they are still saved
 in the database.
Here is my code:
package elevatesecurity.myapplication;

import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;
import android.widget.Toast;
import android.widget.Toolbar;

import com.google.android.gms.common.ConnectionResult;
import com.google.android.gms.common.GoogleApiAvailability;

import java.util.ArrayList;
import java.util.List;

import elevatesecurity.myapplication.Adapters.MarkerAdapter;
import elevatesecurity.myapplication.Model.MarkerModel;
import elevatesecurity.myapplication.Utilities.MarkerDatabaseHelper;

public class MarkerDisplayActivity extends AppCompatActivity {

    RecyclerView recyclerView;
    MarkerAdapter markerAdapter;
    ArrayList<MarkerModel> modelArrayList;
//    private ArrayList<MarkerModel> marker_list = new ArrayList<>();
    MarkerDatabaseHelper markerDatabaseHelper;
    TextView textView;
    Toolbar toolBar;
    List<MarkerModel> markerList;

    private static final int ERROR_DIALOG_REQUEST = 9001;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_marker_display);
        textView = (TextView)findViewById(R.id.markerInfotxt);
        markerDatabaseHelper = new MarkerDatabaseHelper(this);
        recyclerView = (RecyclerView)findViewById(R.id.recyclerview);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));

        modelArrayList = markerDatabaseHelper.getAllMarkers();

        android.support.v7.widget.Toolbar toolBar = (android.support.v7.widget.Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolBar);
        if (isServicesOk()) {
        }

        if(modelArrayList.size()>0)
        {
            textView.setVisibility(View.GONE);

            markerAdapter = new MarkerAdapter(this,modelArrayList);
            recyclerView.setAdapter(markerAdapter);
            markerAdapter.notifyDataSetChanged();
        }

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_marker, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item)
    {
        switch (item.getItemId())
        {
            case R.id.action_removeAll:
                android.support.v7.app.AlertDialog.Builder builder;
                builder = new android.support.v7.app.AlertDialog.Builder(MarkerDisplayActivity.this);

                builder.setTitle("Confirm!")
                        .setMessage("Are You Sure You Want To Remove All Saved Locations?")
                        .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener()
                        {
                            public void onClick(DialogInterface dialog, int which)
                            {

                                modelArrayList.clear();
                                markerAdapter.notifyDataSetChanged();

                            }
                        })
                        .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener()
                        {
                            public void onClick(DialogInterface dialog, int which)
                            {
                                return;
                            }
                        })
                        .setIcon(android.R.drawable.ic_dialog_alert)
                        .show();

                break;
        }

        return super.onOptionsItemSelected(item);
    }

    public boolean isServicesOk()
    {
        Log.d("", "ifServicesOk: checking google services version");

        int available = GoogleApiAvailability.getInstance()
                .isGooglePlayServicesAvailable(MarkerDisplayActivity.this);

        if (available == ConnectionResult.SUCCESS) {
            // Everything is fine and the user can make a map request
            Log.d("", "ifServicesOk: Google play services is working");
            return true;
        } else if (GoogleApiAvailability.getInstance().isUserResolvableError(available)) {
            // An error occurred but we can resolve it
            Log.d("", "ifServicesOk: An error occurred but we can fix it");
            Dialog dialog = GoogleApiAvailability.getInstance().getErrorDialog
                    (MarkerDisplayActivity.this, available, ERROR_DIALOG_REQUEST);
            dialog.show();
        } else {
            Toast.makeText(this, "You can't make a map request"
                    , Toast.LENGTH_SHORT).show();
        }
        return false;
    }

}

public class MarkerDatabaseHelper extends SQLiteOpenHelper
{

public static final String DB_NAME = "markers.db";
public static final int DB_VERSION = 1;
public static final String TABLE_NAME = "markertable";
public static final String COLUMN_ID  = "id";
public static final String COLUMN_LAT = "lat";
public static final String COLUMN_LNG = "lng";
public static final String COLUMN_TITLE = "title";

public MarkerDatabaseHelper(Context context) {
    super(context, TABLE_NAME, null, DB_VERSION);
}

@Override
public void onCreate(SQLiteDatabase db) {
    db.execSQL("create table " + TABLE_NAME + "(id INTEGER PRIMARY KEY AUTOINCREMENT," +
            "lat TEXT, "+
            "lng TEXT, title TEXT)");
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
    onCreate(db);
}

public boolean insertMarker(String lat,String lng,String title)
{
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues contentValues = new ContentValues();
    contentValues.put(COLUMN_LAT, lat);
    contentValues.put(COLUMN_LNG, lng);
    contentValues.put(COLUMN_TITLE, title);
    // Insert the row into your table
    long ins = db.insert(TABLE_NAME, null, contentValues);

    if (ins == -1) return false;
    else return true;
}

public ArrayList<MarkerModel> getAllMarkers()
{
    ArrayList<MarkerModel> arrayListMarkers = new ArrayList<>();
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery("Select * from "+TABLE_NAME,null);
    while(cursor.moveToNext())
    {
        int id = cursor.getInt(0);
        String lat = cursor.getString(1);
        String lng = cursor.getString(2);
        String title = cursor.getString(3);

        MarkerModel markerModel = new MarkerModel(id,lat,lng,title);

        arrayListMarkers.add(markerModel);
    }
    cursor.close();

    return arrayListMarkers;
}

public void deleteRow(int value)
{
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL("DELETE FROM " + TABLE_NAME+ " WHERE "+COLUMN_ID+"='"+value+"'");
}

public void deleteRows(int value)
{
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL("DELETE * FROM " + TABLE_NAME + " WHERE " + COLUMN_ID + " =' " + value + " ' ");
}
}

package elevatesecurity.myapplication.Adapters;

public class MarkerAdapter extends RecyclerView.Adapter<MarkerAdapter.MarkerViewHolder> {

// The MarkerModel is the name of the existed activity called MarkerModel
List<MarkerModel> markerList;
Context mCtx;

public MarkerAdapter(Context mCtx, List<MarkerModel> markerList)
{
    this.mCtx = mCtx;
    this.markerList = markerList;

}

@Override
public MarkerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    View view= LayoutInflater.from(mCtx).inflate(R.layout.item_marker,parent,false);
    return new MarkerViewHolder(view);
}

@Override
public void onBindViewHolder(MarkerViewHolder holder, int position) {

    holder.titleTxt.setText(markerList.get(position).getTitle());

}

@Override
public int getItemCount() {

    return markerList.size();
}

public class MarkerViewHolder extends RecyclerView.ViewHolder
{

    TextView titleTxt;
    Button buttonOptions;

    public MarkerViewHolder(final View itemView)
    {
        super(itemView);
        titleTxt = (TextView)itemView.findViewById(R.id.titleTxt);
        buttonOptions = (Button)itemView.findViewById(R.id.buttonOptions);
        itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
               MarkerModel markerModel = markerList.get(getAdapterPosition());

                Intent i = new Intent(mCtx, DisplayMapActivity.class);
                i.putExtra("lat",markerModel.getLat());
                i.putExtra("lng",markerModel.getLng());
                i.putExtra("title",markerModel.getTitle());
                mCtx.startActivity(i);
            }
        });

        buttonOptions.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    PopupMenu popupMenu = new PopupMenu(mCtx, buttonOptions);
                    popupMenu.getMenuInflater().inflate(R.menu.menu_contextual, popupMenu.getMenu());
                    popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
                        @Override
                        public boolean onMenuItemClick(MenuItem item) {

                            MarkerDatabaseHelper db = new MarkerDatabaseHelper(mCtx);
                            db.deleteRow(markerList.get(getAdapterPosition()).getId());
                            markerList.remove(getAdapterPosition());
                            //       Recent_Adapter.this.notify();
                            notifyDataSetChanged();
                            notifyItemRemoved(getAdapterPosition());

                            return true;
                        }
                    });
                    popupMenu.show();
                }catch(Exception e)
                {
                    e.printStackTrace();
                }
            }
        });

    }

}
}

A: Create in your MarkerDatabaseHelper class this method:
public void deleteAllRows() {
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL("DELETE FROM " + TABLE_NAME);
}

and call it from your activity class:
db.deleteAllRows();

because these lines:
modelArrayList.clear();
markerAdapter.notifyDataSetChanged();

have no affect on the database, they only clear the list that is attached to the adapter.
Another way of deleting all rows without creating a method is to call :
int counter = db.delete(TABLE_NAME, null, null);

this will also return the number of deleted rows.


This fall, students at Oral Roberts University (ORU) will immerse themselves in their studies, even though some of them may never set foot on campus.
The University in Tulsa, Oklahoma is launching a new augmented and virtual reality platform that will play a big part in helping the university make good on its goal to bring its curriculum to anyone, anywhere on the globe. Beyond that, it's just plain cool.


. Red Arc Isolator Wiring Diagram.
. Krone Rj11 Socket Wiring Diagram.
. Wiring Diagram Of Solar Panel System. Kawasaki Bayou 220 Battery Wiring Diagram.
. 1999 Saturn Sl1 Radio Wiring Diagram. Strat Wiring Diagram. 2004 Mitsubishi Eclipse Radio Wiring Diagram.
. Ford F150 Radio Wiring Diagram.
. Mercury Outboard Parts Online.
. 2006 Silverado Wiring Diagram. Wiring Diagram Of Solar Panel System. Tang Soo Do Forms Diagrams.
. 2004 Honda Odyssey Radio Wiring Diagram. Plumbing Manifold Diagram.
. Pontiac G6 Headlight Wiring Diagram.
Starter domestic star motor diagram magnetic symbols wiring western. Shifter ultegra parts 1991 toyota 4runner stereo shimano 1999. Solar panel of radio sl1 system f150 saturn ford. Switch for way mercedes 4 manifold light plumbing a. Falcon soomro soo saima silverado tang au bem 2006. 1994 diagrams 883 harley rj11 krone do sportster forms. Phase 220 socket kawasaki single carrier battery baldor bayou. Heat pontiac pump g6 avian headlight outboard mercury flu. Amp online customer er 2004 100 honda relationship odyssey. And range leaf stem arc isolator mitsubishi red management. Truck 1997 semi 2002 strat chevy jeep eclipse cavalier. Lungs volvo motors 24v 240 in throat wrangler trolling. 110cc split therapy.
daikin ac inverter sprinkler vivo gene. Stator dual antacid kill boat how hei deer zone. Neo 1500 stomach your norcold afc tablets work 2000. Sub camper tj trusted ohm trailer rv advisor refrigerator. Dodge caravan e350 one wire gm alternator kota minn. Deckhand heart recessed start remote 40 quiz lighting motorcycle. Food box chain coil white alligator games outlet breaker. Speaker chainsaw grand black craftsman phone carburetor cherokee 2001. Multiple 96 lights lovely civic contactor eaton transmission dakota. Stand kitchenaid dimmer mixer circuit pilot on pole switches. Rcd nissan gmc serpentine pickup sierra water mercruiser belt. S10 chart to spur cctv microphone draw software flow. Isolation 1jz.
thetford 3 c200 240v disconnect marine vvti. Stop klr 650 pir sable security 2009 transformer control. Delco towbar butterfly distributor zafira b worksheet remy vauxhall. Cell design audio examples car shading elodea beautiful venn. Ignition 7 peterbilt fuse 97 2007 rear explorer hopkins. Plant oxide e8 lewis suspension haltech nutone ceiling cobalt. Dvr international model 763rln radiator paul fan les relay. Front labeled abdominal vehicle 4700 titan only audiovox vasculature. Air mobile 2 holley efi dominator coleman home thermostat. House yamaha rectifier 10 sequencer typical ruger emergency conditioner. 22 5000 assembly trigger pioneer 350z th3110d1008 honeywell colors. Sylvania alarm hayabusa watt.
heater deh electric duct amplifier. 1 pourbaix nickel ballast engine series bmw kenmore t8. Braces siemens rubber difference dryer bands elite between s120. Hss colorado rg stratocaster valve delta shower hvac fender. Unit regulated simple supply dc 0 power hpm mazda. 6 buick century subwoofer stratus automotive dvc gauge diy. Photocell porsche or shotgun peterson external 944 prong schematics. Pain face 1986 fj1200 trim e60 gang head capacitor. Tuner hotpoint photocells 1985 bft tv aquarius card ctd00. Subaru webasto theater outback hdmi connection process s40 create. Net what framework manual is en with v50 dot. John sears generator deutz deere transfer diode 317 testing. Trip shunt blade tractor.
trailblazer connector new spotlights pin. Maple electrical knockout mk1 free sizes focus factory wilson. Fused residential 2003 150cc gy6 gt 1970 scooter beetle. Patch garage rj12 door mini garmin ruckus usb opener. Furnace mg zs turbo 98 emg ducane pa2 924. 12vdc 2010 accord volkswagen xlt prix jetta 30 40a. Cat6 hayman brake rj gtp suburban reese controller 45. Fire edwards neon indicator whirlpool prestige addressable auto 1998. Transit sets problems capri 1987 bayliner talon 1978 word. Basic aircon window cb450 bolens expedition chevrolet tahoe lawn. Rth3100c guitar p4200ub style xl 2008 plug rj45 wall. Led h4 anatomy n3 pickups noiseless bulb neuron digestive. Saab jerusalem a2 library audi 2005 9.
class example. 89 brakes off meter uk abs 2500 hand uml. Mustang cigarette cruiser 6th jvc land graders 120 12v. Stack redarc reversing 2000w iphone winch solenoid drain installation. Pool corolla filter bcdc1240 12 volt mando f350 swimming. Farmall welder endocrine kohler small lincoln super 200 sa. Syncline 3d dmx m mr2 network plunging 5 visio. Smell xc90 satellite golf load toshiba ge sense center. Outlets cb goldwing drz hr44 400 laptop directv wireless. Ranger 1996 aprilia 94 hunter speed 8 vw swm. 500 lower 15 kit 50 predator ar rs polaris. View rhino brain inch hp harness fuel cartridge turntable. Magi label gift cvr 1965 the plot kicker animal. Voltage well sprinter blank escape abb cycle vfd.
cisco. Taurus setup ses cd sure pressure amperage washer pigtail. Explanation homelite bass mx19 blower ocean tracker upright macbook. Turn ibanez ex snow meyer toggle stencil ram plow. Signal delphi 120v radiogroup eagle skeleton golden point add. Avic hazard clothes 220v wiper davidson bundeswehr cat5 amana. 1990 dmz ways german ct70 language architecture d1 dash. Oxygen cutoff mcdonnell vdo oil 11 low miller sportsman. Club bohr bicycle gmos 06 danfoss motorized precedent fridge. Printable eye apollo reef stat 996 room atoll ear. Main 1995 protege smoke detector t90 f250 1972 lennox. Types caldina beams elantra daewoo timing matiz 3sgte tachometer. Faucet magnum 20v gas at american standard tutorial.
4age. Cougar clarion tub wolo two bad db175mp boy hot. 252u elegant kenwood shark sonoma duncan photos reading kdc. Tele glacial g16 sv650 cart gfs layers 2017 skin. Nfs till g1 female running doorbell ekg downlights induction. Monsoon hitch cable camry 320 700r three raptor narva. Spotlight m3 4x4 onan maf where e46 complicated frog. Are 04 horn 20 twist grizzly 600 bosch kidneys. Lock deutsch reaction exothermic ethernet energy sc2 active fixture. Hayward extension e6k wheels accel ecu bromine telephone images. Winnebago celica 300 stearns ten 250 fujitsu block automation. Isuzu south 3000 tekonsha voyager joey africa logic centurion. Antenna flasher corvette audew ezgo multiplexer line transducer.
collecti. Get element 36 taco image railway 422 go ez. Liftmaster 2016 sensor needs coloring impala kia timer tumble. Mott flail hfc camaro mower rio 69 apexi regulator. S3 level foot galaxy samsung accounting nitrogen cash pedal. Powerpack rack micro horse smart lateral pinion volcano sheep. Activity russell jaguar atv hertzsprung crocodile wired hard warn. Xj6 senda cat5e nose derbi cleaner tech jack sm. Labelled switched generac obd2 gfci whole fish arts 6pin. Player human stove 8pin tooth trane xl90 mk4 adapter. Electrolux s plan xterra 1971 avx h heating ground. Charger n14 dvd rav4 chevelle cummins p7000cd celect exhaust. Caldera gibson towing alpine 6a rocker msd d310 iva. Breeze harbor immersion cmc.
plus p90 plate 95 morgen. 10202 1993 sport painless rover 75 warrior 350 el. E53 gg structures ss photosynthesis 700r4 leviton srs 1963. Chieftain acura frontier blue emanage ews 1989 firebird integra. Loop sedona causal nest 3rd generation template grade 99. Microscope follicle dcc 9v durango hydraulic hair xlr track. Comelit leisure turtle kenworth w900 motorhome pathfinder type latching. Structure r51 locking r craigslist unlabeled motorguide central vectra. Evcon ii blazer tel rheem english tac origami defrost. Set double notation e39 viewline board case tacho six. Duet a4 bell hydro surround sound pdf sony somfy. Sss project 1980 montana seymour b2000 cj5 service platypus. Architectural thruster l5.
placement spa cal lead copyright ion. 2100 vlt intrepid genie drive pwm efie drawings overrun. Pinout drum squier t 10base clever posterior t1 crossover. 01 corsa maxima job opel vortec 770 holden rodeo. 1982 vs spectra gauges fiction compound warner nonfiction stewart. R6 fox alpha yzf kazuma quad skoda riptide fennec. Maker fill octavia study transformers deciduous forest triple streetscape. Sp involving web vue circles pull 101 crimestopper make. N1 eiger quadrunner airbag renault clio seat cpn1899 suzuki. Automatic z3 forester key roketa pots no 150 sorting. 1992 non zx3 fiat maintained aftermarket windows alero oldsmobile. Bar 1967 pt app tomar 626 toilet ducato 57. Pair 25 clipsal amphibians maths.
color richmond reptiles cooling. Fh wrx x720bt mixtrax code humbucker alumitone impreza amoeba. Pv explained great chinese vz internal protege5 ls1 channel. Prodigy access wires spark rth2300b1038 paxton carroll bilge johnson. Betta schneider download ddx318 mk5 tundra choke universal motorised. C6 mccb sink rib a6 venting numbers max 110v. Oven master bus 1915 wound school nz headlights cord. Smartproxyfo picture prevailing bonding sodium ionic ddx419 biology wind. E watts reliance backflow 85 heated an preventer mitosis. Dewalt impulse 9n 48 1941 reversible table saw sentra. Pig dol 325i marinco ls e30 fetal galant swap. Ps1400 sentry mowers test base fluorescent 14 riding canada. Christianity pack.
softail 2075 rotork islam judaism poulan t6360. Berlingo 05 effect discovery lease cause citroen wiki ba. Mk6 jacuzzi volcanic powermate rodgers j 1361 aviation read. 84 boiler stratton briggs 71 385 volleyball cow buderus. 520 from hotel general use carb blaupunkt peavey adjustment. Y sundial tdi t800 72 glow disposal garbage flachbatterie. Fusion york razor rockford laser bones lutron sketch e150. Back aav buttocks electricity muscles vent sql tool server. Motion australia kc daylighter glock exploded junction australian skull. Trail avital inventory sl2 dei lnb 4103 entity fourtrax. Dometic best 22re q symbol sky rm2652 dune buggy. 79 trans lancer handler am jimmy lace echo temperature. Life e47 rc.
routing intake ladybug stuffy helicopter huskee. Cb350 tow canyon v300 kd 1984 king thermo r610. Heil condenser compare 24927 worksheets rzr ready contrast dnx5120. Credit stx38 torch jog transaction changeover stir factor icp. Transition allison conventional tach freightliner mounts reticular state sunpro. Gf30 that basics formation innovair wds includes pbt major. Fs p1400dvd optical stihl detonator 76 express 65 bypass. P trap intruder nail hitachi gun charlotte consumer airport. Ont vintage drag fios 1988 explosion 81 four 2200ub. 660 914 sl 152 sigma mossberg tree 1975 flat. Autobatterie cdi spitronics oldtimer lung side fog kodiak alveoli. 277v skyline parrot r33 astra 2500hd g bluebird 4l80e..
Converter shell electron ck3200 manganese drd linguistics matrix organizational. Rs232 daten glowshift hyundai phasor db9 accent 02 technische. 4r70w coaster kinetic restaurant meiosis roller muscle palmar stapes. Seven dayton round potential position race sonata 4000 mirage. Detectors intertherm benz c10 pipe ring topology xt premium. Hanma jdm mio ae86 jumper analysis statistical graphs labeling. Answer cables chrysler 240sx envoy vl module pacifica tp100. 1000 boss lt ireland receiver c run sr20det xplod. Pictures infinity rpm telemecanique bean dimming jayco digital nervous. Seedling robus 323 edelbrock barrel conduit canister sample pcm. Jk lysosome secure rb25det sharan icc gs lowrider electronic..
Submarine orange call 7si ammeter 3000gt sunl selector meat. 13 rendezvous veins spectrum l14 terminal diabetes solid political. Town over vtx stanley pertronix 1300 crydom 39 building. C2 iii thomas compressor ignitor vip verizon 50cc vibe. Not night priming skeletal pj schematic 1981 93 detailed. 850 stellaluna panels infrastructure mic extractor lion sea gator. Definition conditioning 1979 tail xj mainframe mpv splitter legend. Function 315 balanced 4f autopage yukon hino wrist rf. Revolver seasons f halide cars tilt metal photo earth. Truss v40 break sensors workflow away flip passion data. Triton belegung flop sorento mn cnc source open alternative. Plc 1100 comedone bargman router rigid ds pollak.
asco. Franklin tbx10a without camera touareg vy.
honeywell thermostat rth221b1000 wiring diagram.


text:
Q: Child class post method to return different template and context I want to be able to take the same form input and use it to do calculations (using different urls) for different products and send product results to a product template
I tried having a base class with get and post methods from which child classes(different product urls) will inherit especially the post method to remain DRY
from .models import InputForm

class InputView(TemplateView):
    template_name = 'input.html'

    def get(self, request, *args, **kwargs):
        form = InputForm()
        return render(request, self.template_name, {'form': form})

    def post(self, request, *args, **kwargs):
        form = InputForm(request.POST)
        if form.is_valid():
            cleaned_data = form.cleaned_data
            a =cleaned_data['mbr_l']
            b =cleaned_data['es_l']
            c =cleaned_data['wic_l']
            d =cleaned_data['br2_l']

            length = a + b + c + d

            qty = 0.8*length

            return render(request, 'result.html',  {'qty': qty})

        else:
            return render(request, self.template_name, {'form': form})

class B(InputView):
    def post(self, request, *args, **kwargs):
        qty2 = super().post(self, request, *args, **kwargs)

        return super().render(request, 'result2.html',  {'qty2': qty2})
url conf:
urlpatterns = [
    path('product1', InputView.as_view()),
    path('product2',B.as_view()),
 ]

templates:

template1
{{qty1}}

template2
{{qty2}}

I expect the url product2 in url conf to do calculation and send context(qty2) to results2.html but it always renders results.html with qty which is correct because B is inheriting InputView and all methods.I dont really expect the call to super of render method to be valid but that was the last of my many trials.


Stephen Neff's primary research interest is the history of public international law. He is the author of a book on the historical development of international economic law. His current focus is the history of the law of neutrality. Another major interest is international human rights law, from both the academic and the practical standpoints.
Abstract: Justice among Nations tells the story of the rise of international law and how it has been formulated, debated, contested, and put into practice from ancient times to the present. Stephen Neff avoids technical jargon as he surveys doctrines from natural law to feminism, and practice from the Warring States of China to the international criminal courts of today. Ancient China produced the first rudimentary set of doctrines. But the cornerstone of later international law was laid by the Romans, in the form of natural law—a universal law that was superior to early laws and governments. As medieval European states came into contact with non-Christian peoples, from East Asia to the New World, practical solutions had to be devised to the many legal quandaries that arose. In the wake of these experiences, international legal doctrine began to assume its modern form in the seventeenth and eighteenth centuries. New challenges in the nineteenth century encompassed the advance of nationalism, the rise of free trade and European imperialism, the formation of international organizations, and the arbitration of disputes. Innovative doctrines included liberalism, the nationality school, and solidarism. The twentieth century witnessed the formation of the League of Nations and a World Court, but also the rise of socialist and fascist states and the advent of the Cold War. Yet the collapse of the Soviet Union brought little respite. As Neff makes clear, further threats to the rule of law today come from environmental pressures, genocide, and terrorism.
Abstract: Stephen Neff offers the first comprehensive study of the wide range of legal issues arising from the American Civil War, many of which resonate in debates to this day. Neff examines the lawfulness of secession, executive and legislative governmental powers, and laws governing the conduct of war. Whether the United States acted as a sovereign or a belligerent had legal consequences, including treating Confederates as rebellious citizens or foreign nationals in war. Property questions played a key role, especially when it came to the process of emancipation. Executive detentions and trials by military commissions tested civil liberties, and the end of the war produced a raft of issues on the status of the Southern states, the legality of Confederate acts, clemency, and compensation. A compelling aspect of the book is the inclusion of international law, as Neff situates the conflict within the general laws of war and details neutrality issues, where the Civil War broke important new legal ground. This book not only provides an accessible and informative legal portrait of this critical period but also illuminates how legal issues arise in a time of crisis, what impact they have, and how courts attempt to resolve them.
Abstract: This volume is a history of war, from the standpoint of international law, from the beginning of history to the present day. Its primary focus is on legal conceptions of war as such, rather than on the substantive or technical aspects of the law of war. It tells the story, in narrative form, of the interplay, through the centuries, between, on the one hand, legal ideas about war and, on the other hand, state practice in warfare. Its coverage includes reprisals, civil wars, UN enforcement and the war on terrorism. This book will interest historians, students of international relations and international lawyers.
Abstract: A survey of the history of law of neutrality from its mediaeval roots to the end of the 20th century. The theme is the eternal clash between the rights of neutrals and belligerents - between the right of belligerents to defeat their enemies, and the right of neutrals to trade freely with all parties. Over the centuries, belligerent powers have devised various legal means of restricting neutrals from trading with their enemies, such as the law of blockade and contraband carriage. At the same time, neutral traders have done their best to evade and circumvent these restrictions. This book traces the evolution of state practice, together with the debates over the relevant doctrinal issues and the various attempts to reform and codify the law of neutrality.
Abstract: A study of the historical and intellectual context of the struggle for a liberal economic world order and an elucidation of the post-war world economic system and its principal institutions the General Agreement on Tariffs and Trade (GATT), the World Bank and the IMF. The final chapter includes commentary on the Arab oil crisis of the 1970s.
Abstract: The law of neutrality as it stood in 1914 was a set of compromises that had evolved from past practices, most notably regarding the law of blockade. During World War I, the Allied (predominantly British) economic warfare policy could not comprise classic close blockading as in previous conflicts. As a result, various specific policies were devised that, in combination, were designed to have much the same material impact and, therefore, to operate as a functional equivalent to traditional blockading. The lawfulness of each of these component policies was determined by the law of neutrality as it had evolved up to 1914, as embodied most notably in the (unratified) Declaration of London of 1909. Six major legal strategies were devised. Contraband lists were expanded beyond the limits stated in the Declaration, enabling goods to be captured anywhere on the high seas. There was also a reclaiming of traditional, pre-Declaration rights, amounting effectively to a repudiation of the compromises and concessions that had gone into the making of the Declaration. The use of existing traditional belligerents' rights was extended, most notably in the area of visit and search. Rigorous use was made of the continuous-voyage principle, most notably with the application of the principle to conditional, as well as to absolute, contraband (contrary to the terms of the Declaration of London). The principle of reprisal was invoked to justify measures that were barred by the inherited law of neutrality. Finally, various sovereign-right measures were employed, most notably navicerting and blacklisting. Debates over the lawfulness of these measures occurred during the conflict and continued afterwards. The basic conflict was between a focus on the adherence to specific rules and a focus on the adherence to the deeper principles that arguably underlay the surface rules.
Abstract: Lorimer's positions on issues of war and neutrality were rooted in his commitment to natural law. This included, crucially, an insistence on individuals acting in a dual capacity – as citizens of their states and also as members of the larger global community. At the same time, Lorimer was committed to a traditional just war doctrine and, in particular, to the principle that, in a given conflict, only one side can be right. This notion led him, in turn, to take a principled negative view of neutrality, in contrast to the prevailing positivist tendency in international law, which was to look with approval on neutrality. On the specific subject of contraband of war, he maintained that there could be no fixed division between contraband and non-contraband goods. He was doubtful that the cardinal neutral duty of impartiality could realistically be applied. He also doubted the feasibility of a code-of-conduct approach to the law on the conduct of war and on neutrality, insisting instead (consistently with his just war approach) that necessity was the foundation of belligerents' rights. Lorimer was also an outspoken opponent of the Washington Rules on neutrality that had been crafted by the USA and Britain in 1871. He objected to the restrictions in these rules on the freedom of individuals to contract with belligerent powers as well as to the imposition of a duty on the part of neutral states to police the activities of their nationals.
Abstract: Fundamental liberties of states, if they exist, should be seen essentially as analogues of civil liberties in national legal systems, ie, as 'privileges' in the sense in which Hohfeld employed that term. In the natural-law era, there was no room for any conception of fundamental liberties of states, since natural law was basically a law of duties rather than of rights. Only with Hobbes did the idea arise of a rights-based natural law. In the eighteenth century, Wolff and Vattel advanced the idea of a duty of states to strive towards perfection—but this was a duty rather than a liberty. Only in the positivist era of the nineteenth century, with its strongly state-centred ethos and its stress on the independence of states, did a concept of fundamental liberties of states emerge, with various lists proposed by various authors. Even there, the idea was meaningful only in the context of legislative (as opposed to a contractual) picture of customary international law. Various positivist writers advanced lists of fundamental liberties. Some positivist writers, however, such as Westlake, opposed the idea, as did Kelsen later. Nor is there significant support for the idea in state practice. Repudiations of treaties, most notably, have not entailed an invocation of fundamental liberties. Neither self-defence nor non-intervention qualifies as a liberty. Similarly, neither the principle of freedom (from the Lotus case), nor the persistent objector principle lend support to the concept of fundamental liberties of states.
Abstract: Britain's Trident nuclear missile programme has long been politically controversial. In 1999, the controversy entered the judicial arena in Scotland, in two cases involving 'direct action' against Trident installations by anti-nuclear activists. In both cases, the actions were intended not as protests against Britain's nuclear-weapons policy, but rather as actual operations to disable the weapons themselves. The acts were, in other words, in the nature of acts of sabotage. Both incidents led to criminal prosecutions. In both cases, the accused parties sought to use international law as a defence. In both cases, the Appeal Court of the High Court of Justiciary—the highest court for criminal cases in Scotland—rejected the defence. In the process, however, the Appeal Court had occasion to expound upon some controversial points regarding nuclear weapons. Each of these cases will be discussed in turn.
Abstract: International law does not authorise self-help action of a criminal character for the prevention of international crimes.
Abstract: The present international monetary regime has been characterized as a 'non-system', an assessment containing an important element of truth from both the economic and juridical standpoints. Indeed, the (more or less) freely floating exchange rate regime which has prevailed in fact since the upheavals of 1971–73 and in law since 1978 is not so much a system as a collective admission that no system is really feasible in the context of the present world economy. A close look at the present order, however, reveals a very interesting phenomenon the importance of which, unfortunately, is sometimes obscured because it is not reflected in any formal legal structure: this is the de facto division of the world into a two-tier order consisting of industrialized states on the one hand, which generally maintain flexible exchange rates, and developing countries on the other hand, which typically have chosen to fix their exchange rates (either against one of the major currencies, or else against a basket of currencies).


text:
Former US Sen. Mike Gravel dies at 91
Posted: Jun 27, 2021 3:20 PM CST | Updated: Jun 27, 2021 6:24 PM CST
Former US Sen. Mike Gravel, an Alaska Democrat who garnered national attention by reading the Pentagon Papers into the Congressional Record and waged two unsuccessful bids for president, has died at age 91. By Chandelis Duster, CNN
(CNN) -- Former US Sen. Mike Gravel, an Alaska Democrat who garnered national attention by reading the Pentagon Papers into the Congressional Record and waged two unsuccessful bids for president, has died at age 91.
Gravel's daughter, Lynne Mosier, confirmed his death to CNN in a text message on Sunday, remembering her father as a "terrific dad."
Born May 13, 1930, in Springfield, Massachusetts, Gravel served in the US Army as an adjutant in the Communications Intelligence Service in Germany and a special agent in the Counter Intelligence Corps in France from 1951 to 1954, according to a biography on his website. After his time in the military, Gravel graduated from Columbia University in 1956 with a Bachelor of Science degree in economics.
He served in the Alaska House of Representatives from 1963 to 1966 where he was elected state House Speaker in 1965. Gravel was elected to Congress in 1968, where he served as a senator from 1969 to 1981.
In 1971, Gravel gained nationwide attention after he read portions of the Pentagon Papers, a collection of leaked top-secret information about the Vietnam War, into the Congressional Record in an effort to end the war. The documents showed that senior leaders, including several presidents, believed? the war was unwinnable, and that the government had misled Congress and the public about its progress.
He launched an unsuccessful bid for the presidency as a Democrat in 2006, and later, after ending his campaign, announced he would switch to the libertarian party. After a failed long-shot campaign for the presidency in 2019, he endorsed Vermont Sen. Bernie Sanders.
The Gravel Institute, a progressive think tank founded by the former senator, also confirmed his death and remembered him in a tweet Sunday.
"We are sad to announce that Senator Mike Gravel passed away peacefully, surrounded by family, at his home in Seaside, California. He was 91, and had lived the fullest live (sic) anyone could have ever wanted. We will miss him every day," the institute said.
Gravel was also founder and chairman? of the nonprofit Democracy Foundation.


text:
Home Entertainment Batwoman production assistant paralyzed after suffering accident on set
Batwoman production assistant paralyzed after suffering accident on set
Alain Ang
Source: Batwoman Season 1 Episode 16: Through the Looking Glass Promo, Ruby Rose, Rachel Skarsten, The CW Network | YouTube
One of the CW's newest and most popular television dramas has suffered another setback as a production assistant who worked on Batwoman suffered an injury on set which left her paralyzed from the waist down.
While working under Vancouver's Georgia Viaduct while being on location to prep a setup last March 11th, 30-year-old Amanda Smith was hit by a lift's bucket on her head, this according to a GoFundMe page set up for the production assistant.
According to the Vancouver Sun, the production assistant was facing away from the machine and was not able to hear the lift due to the sound of the ongoing traffic above her according to Tyler Mancuzzo, Smith's friend and workmate who help set up her GoFundMe page.
"She was literally just sitting there and it came down on top of her," said Mancuzzo.
According to reports, the Workers' Compensation Board of British Columbia (WorkSafeBC) has started an investigation regarding the incident.
A representative from Warner Bros. TV told Deadline that Smith is a valued member of the Batwoman production crew and their thoughts and prayers are sent her way for a speedy recovery. The Warner Bros. representative added that they are closely working with WorkSafeBC to contribute any information that WorkSafeBC will need for the investigation. The representative stated that they will continue to strive for the protection, safety, and health of their entire cast and crew.
Due to the accident, Smith endured serious spinal injuries like a burst vertebrae and was immediately taken to Vancouver General Hospital for emergency surgery. Smith's GoFundMe page states that she will be unable to work for the foreseeable future and will need help to make ends meet until she fully recovers. The message goes on to say that they don't want Smith to worry about her financial situation as she traverses these tough times.
The GoFundMe was initially set to a $50,000 goal but has been changed to $100,000. As of this writing, Smith's GoFundMe has reached over $70,000 for her rehabilitation. Deadline has also reported that Batwoman's production team has reached out to Smith's family to offer them assistance.
This wasn't the first accident that Batwoman had endured. Ruby Rose who stars as the titular character of the show suffered a broken neck while doing a stunt for several hours that needed surgery after weeks of having chronic pain. The injury almost paralyzed the Australian actress but has since recovered.
Alain Ang is an editor for Best in Au. He enjoys writing about entertainment, movies, and lifestyle. On off days he spends his time with his rescue dogs, Sansa and Heart, digging holes in Minecraft, and developing his novel.
Previous articleWhy might you be failing trekking in Nepal?
Next articleNetflix shows to binge-watch while doing self-quarantine (part 1)
How to make your podcast sound professional
New Orleans gets The Wizard of Oz treatment in Bourbon Whiz
Personal finance lessons from Confessions of a Shopoholic
The evolution and development of cryptocurrency
Why startups must invest in flutter app development in 2021?
Home buyer's do's and don'ts: Identifying chattel and fixture
Outsourcing Philippines: Tech Support
Bruce Goren talks about his business, Holden Parcel One, LLC
Excellent e-commerce customer support is your ticket to success
Best Pizzerias in Newcastle
Meet Glen Beaver, the director of Australian Sandalwood Products Pty Ltd
Sandra Dioguardi talks about designing wedding invitations
Oscar Awards 2018: Margot Robbie nominated for best actress
Newlywed tourist dies drowning on the way to 'Into The Wild'...


text:
Share this Story: Adam: Secrecy around LRT contractors' basic qualifications is unacceptable
Adam: Secrecy around LRT contractors' basic qualifications is unacceptable
We're undertaking the largest project the city has ever done, and we aren't allowed to know if the businesses selected to build it are up to the job.
Mohammed Adam
Councillor Diane Deans: Someone has to ask the tough questions. Photo by Wayne Cuddington /Postmedia
Good for the city that the second phase of LRT is going ahead. It has been long in coming but Ottawa can now look forward to a rail service to be proud of, with the expansion to Algonquin College and Moodie Drive in the west, Riverside South and the airport in the south and farther east to Trim Road. By 2025, when it is all done, Ottawa can truly say it has a light rail system worthy of the capital.
But even as we celebrate this milestone, troubling questions remain about the qualifications of the two contractors – Kiewit-Vinci and SNC-Lavalin – which were chosen for the $4.6-billion LRT project. The refusal of city bureaucrats to say whether the two companies actually met the technical requirement set by the city can only lead to suspicion that something fishy went on during the bidding process. How else to explain it? Until the issue is cleared up, the public can have no confidence that the right contractors were chosen for the job.
Adam: Secrecy around LRT contractors' basic qualifications is unacceptable Back to video
Here's the thing: A key part of the request for proposals was that a winning contractor must score a minimum 70 per cent for technical ability. So, at last week's council meeting, Coun. Diane Deans asked whether the winners met the technical criteria set out by the city. She wasn't asking for the scores. It was a simple question but senior staff wouldn't answer, claiming the information is confidential. Even more outrageous, the bureaucrats dug in, saying they wouldn't reveal the information even behind closed doors. Sadly, most councillors didn't seem bothered.
"I got a song and dance. I got 100 different ways of dancing around it and I didn't get a simple answer," Deans said.
"In my time as a councillor, I have never heard staff refuse to answer that question. You ask and the answer is always 'yes,' " said Coun. Rick Chiarelli. "The logical suspicion is that the answer is 'no,' otherwise they'd have said 'yes.' "
It's hard to understand why staff wouldn't give a straightforward response. Invoking confidentiality in this case is ridiculous.
Indeed. It's hard to understand why staff wouldn't give a straightforward response. Invoking confidentiality in this case is ridiculous. There is nothing confidential about telling council, and indeed residents, whether contractors we hired for this project met the established requirements. Staff acknowledged the 70-per-cent threshold for technical ability, so how couldn't they tell us if the contractors met it? This is a no-brainer.
Technical ability is the most important requirement when you are hiring a contractor to undertake a large and complex engineering project such as light rail construction. This is what tells you a contractor has the know-how and experience to do the job. But here we are undertaking this huge rail extension, the largest project the city has ever done, and we don't know if our contractors are up to the job. And we don't know because city staff say it is a secret. Could it be that the losing bidders might discover the marks were lower for one or the other winner and sue for unfair process? This is speculation of course, but in the absence of a simple "yes or no" answer, that's what we are left with.
LRT train does a test run near Blair station on March 5. Photo by James Park /Postmedia
Let's not forget the broader issue of transparency and accountability. We elect councillors to represent us and they, not city staff, are accountable to residents. So, how is it that staff can refuse to give councillors basic information to help them meet their oversight responsibilities? How can it be a breach of confidentiality to tell councillors that companies we hired for such a major project met the minimum technical standard? And what happens with the next big project? Is it now the norm to claim confidentiality when someone asks if a contractor has met the city's technical requirements?
What happened last week was a travesty and shouldn't be allowed to stand. Mayor Jim Watson should step in and tell us if Kiewit-Vinci and SNC-Lavalin met the city's technical criteria. This shouldn't be a secret. The companies surely don't need this cloud over their heads going forward. And we need to know.
ALSO IN OPINION:
Today's letters: MPP Randy Hillier deserves better, says MP Scott Reid
Glavin: Whatever we do about China, it can't be more of the same
Hamilton: On LeBreton Flats, we can still think big
Mohammed Adam is an Ottawa writer.


text:
"use strict";
process.env.NODE_ENV = "production";

const alminCurrent = require("../../../almin-current");
const fs = require("fs");
const json2csv = require("json2csv");
const path = require("path");
const range = require("lodash.range");
const PQueue = require("p-queue");
const queue = new PQueue({ concurrency: 1 });
process.on("unhandledRejection", console.error);

function runStore(almin, storeCount) {
    return new Promise((resolve, reject) => {
        const stores = Array.from(new Array(storeCount), (_, i) => i).map((index) => {
            return almin.createStore(`Store${index}`);
        });
        const context = almin.createContext(stores);
        let startTimeStamp, didTimeStamp, completeTimeStamp, onChangeTimeStamp;
        context.events.onWillExecuteEachUseCase((payload, meta) => {
            startTimeStamp = meta.timeStamp;
        });
        context.events.onDidExecuteEachUseCase((payload, meta) => {
            didTimeStamp = meta.timeStamp;
        });
        context.events.onCompleteEachUseCase((payload, meta) => {
            completeTimeStamp = meta.timeStamp;
        });
        context.onChange(() => {
            onChangeTimeStamp = Date.now();
        });
        // execute usecase
        const useCase = almin.createUseCase();
        context
            .useCase(useCase)
            .execute({ newState: 1 })
            .then(() => {
                resolve({
                    didExecutedTime: didTimeStamp - startTimeStamp,
                    completeTime: completeTimeStamp - startTimeStamp,
                    updateTime: (onChangeTimeStamp || Date.now()) - startTimeStamp
                });
                context.release();
            });
    });
}

const timeStamp = Date.now();
const outputCSVPath = path.join(__dirname, "output", `${timeStamp}.csv`);
// 0...350 stores
const storeRanges = range(0, 350, 5);
// count
const resultsCurrent = [];
storeRanges.forEach((count) => {
    queue.add(() => {
        return runStore(alminCurrent, count).then(({ didExecutedTime, completeTime, updateTime }) => {
            resultsCurrent.push({
                count,
                didExecutedTime,
                completeTime,
                updateTime
            });
        });
    });
});

queue.onEmpty().then(() => {
    var fields = ["count", "didExecutedTime", "completeTime", "updateTime"];
    var myCars = resultsCurrent;
    var csv = json2csv({ data: myCars, fields: fields, del: "\t" });
    console.log(csv);
    fs.writeFileSync(outputCSVPath, csv, "utf-8");
});