text:
{-# LANGUAGE MultiWayIf #-}
{-# LANGUAGE FlexibleContexts #-}
module Language.Jass.Semantic.Check(
  JassModule,
  checkModuleSemantic,
  checkModuleSemantic',
  checkModulesSemantic'
  ) where

import Language.Jass.Parser.AST
import Language.Jass.Semantic.Context
import Language.Jass.Semantic.Type
import Control.Monad.ST
import Control.Monad.State.Strict
import Control.Monad.Except
import Data.Maybe (isJust, fromJust, isNothing)
import qualified Data.HashMap.Strict as HM
import qualified Data.Foldable as F(forM_)

class SemanticCheck a where
  checkSemantic :: a -> SemanticError -> JassSem s ()

-- | Check module without imports
checkModuleSemantic' :: JassModule -> Either SemanticError ([TypeDef], [Callable], [Variable])
checkModuleSemantic' = checkModuleSemantic HM.empty

-- | depricated, glues together modules
checkModulesSemantic' :: [JassModule] -> Either SemanticError ([TypeDef], [Callable], [Variable])
checkModulesSemantic' mods = runST $ runJassSem $ mapM_ check mods >> freezeContext
  where
  check (JassModule _ _ types globals natives funcs) = do
    checkSemantic types noMsg
    registerPrototypes $ fmap CallableNative natives
    registerPrototypes $ fmap CallableFunc funcs
    checkSemantic globals noMsg
    checkSemantic natives noMsg
    checkSemantic funcs noMsg
    where
      registerPrototypes = mapM_ registerCallable

-- | Checks one module for semantic errors
checkModuleSemantic :: HM.HashMap String JassModule -> JassModule -> Either SemanticError ([TypeDef], [Callable], [Variable])
checkModuleSemantic importMap m = runST $ runJassSem $ check m >> freezeContext
  where
  checkImport (Import src mname) =
    case HM.lookup mname importMap of
      Nothing -> throwError $ SemanticError src $ "Cannot find module '" ++ mname ++ "'"
      Just m' -> check m'
  check (JassModule _ imports types globals natives funcs) = do
    mapM_ checkImport imports
    checkSemantic types noMsg
    registerPrototypes $ fmap CallableNative natives
    registerPrototypes $ fmap CallableFunc funcs
    checkSemantic globals noMsg
    checkSemantic natives noMsg
    checkSemantic funcs noMsg
    where
      registerPrototypes = mapM_ registerCallable

instance SemanticCheck a => SemanticCheck [a] where
  checkSemantic list err = mapM_ (`checkSemantic` err) list

instance SemanticCheck JassType where
  checkSemantic (JUserDefined name) err = do
    t <- getType name
    case t of
      Nothing -> throwError err
      _ -> return ()
  checkSemantic _ _ = return ()

instance SemanticCheck TypeDef where
  checkSemantic td@(TypeDef src name jtype) _ = do
    lookres <- getType name
    case lookres of
      Nothing -> checkSemantic jtype $ SemanticError src $ "Extend type " ++ show jtype ++ " is unknown"
      Just td2@(TypeDef src2 _ _) -> unless (td == td2) $ throwError $ SemanticError src $
        "Type " ++ name ++ " is already defined at " ++ show src2
    registerType td

instance SemanticCheck Variable where
  checkSemantic var _ = do
    checkVarType
    checkRedefinition
    checkInitializer
    checkCodeArray
    where
      -- | Fails if variable type isn't exists
      checkVarType = checkSemantic (getVarType var) $ SemanticError (getVarPos var) $
        "Type of variable '" ++ show (getVarType var) ++ "' isn't known"

      -- | Fails if variable already exists
      checkRedefinition = do
        let name = getVarName var
        let src = getVarPos var
        mvar <- getVariable name
        case mvar of
          Nothing -> return ()
          Just var2 -> throwError $ SemanticError src $ "Variable " ++ name ++ " is already defined at "
            ++ show (getVarPos var2)
      -- | Fails if initial value type isn't equal declared one
      checkInitializer =  do
        let jtype = getVarType var
        case getVarInitializator var of
          Nothing -> return ()
          Just initExpr -> do
            checkSemantic initExpr noMsg
            exprType <- inferType initExpr
            cond <- exprType `typeSubsetOf` jtype
            unless cond $ throwError $ SemanticError (getExpressionPos initExpr) $
              "Type mismatch in variable initial value, expected " ++
                show jtype ++ " but got " ++ show exprType
      -- | Fails if var is array of code
      checkCodeArray =
        case getVarType var of
          JCode -> when (isVarArray var) $ throwError $ SemanticError (getVarPos var) "Code array is illegal"
          _ -> return ()

instance SemanticCheck Parameter where
  checkSemantic p@(Parameter src jtype name) _ = do
    checkSemantic jtype $ SemanticError src $ "Type of parameter " ++ name ++ " is unknown!"
    checkSemantic (VarParam p) noMsg

instance SemanticCheck GlobalVar where
  checkSemantic gvar err =
    let var = VarGlobal gvar
    in checkSemantic var err >> registerVariable var

instance SemanticCheck LocalVar where
  checkSemantic lvar = checkSemantic $ VarLocal lvar

instance SemanticCheck FunctionDecl where
  checkSemantic (FunctionDecl _ _ params Nothing) err = checkSemantic params err
  checkSemantic (FunctionDecl _ _ params (Just retType)) err = do
    checkSemantic params err
    checkSemantic retType $ updateErrorMsg err $ const $ "Return type " ++ show retType ++ " is unknown"

instance SemanticCheck Callable where
  checkSemantic callable _ = do
    let name = getCallableName callable
    let src = getCallablePos callable
    lookres <- getCallable name
    case lookres of
      Nothing -> return ()
      Just callable2 -> let src2 = getCallablePos callable2 in unless (src2 == src) $ throwError $ SemanticError src $
        "Function/native " ++ name ++ " is already defined at " ++ show src2

instance SemanticCheck NativeDecl where
  checkSemantic native@(NativeDecl src _ decl) _= do
    checkSemantic (CallableNative native) noMsg
    checkSemantic decl $ SemanticError src ""
    registerCallable (CallableNative native)

instance SemanticCheck Function where
  checkSemantic func@(Function src isConst decl@(FunctionDecl _ funcName params retType) locals stmts) _ = do
    checkSemantic (CallableFunc func) noMsg
    checkSemantic decl $ SemanticError src ""

    mapM_ registerVariable $ fmap VarParam params
    forM_ locals $ \local -> do
      checkSemantic local noMsg
      registerVariable $ VarLocal local
    checkSemantic stmts noMsg

    when isConst $ mapM_ checkConstantness stmts
    mapM_ checkSetConstantness stmts
    mapM_ checkNakedExitWhen stmts
    mapM_ checkReturnType stmts
    when (isJust retType && not (checkTerminationFlow stmts)) $ throwError $
      SemanticError src $ "Function " ++ funcName ++ " must be ended with return statement"
    mapM_ removeVariable $ fmap getParamName params
    mapM_ removeVariable $ fmap getLocalVarName locals

    registerCallable (CallableFunc func)
    where
      -- | Checking that constant function uses only constant natives and functions
      checkConstantness (CallStatement stmtSrc _ name _) = do
        mcallable <- getCallable name
        case mcallable of
          Nothing -> return ()
          Just callable -> unless (getCallableConstness callable) $
            throwError $ SemanticError stmtSrc $ "Cannot use non constant function/native in constant function "
              ++ getCallableName callable ++ " at " ++ show src
      checkConstantness _ = return ()

      -- | Checking that set is not setting immutable variables
      checkSetConstantness (SetStatement stmtSrc _ name _) = checkVarConstantness name stmtSrc "variable"
      checkSetConstantness (SetArrayStatement stmtSrc _ name _ _) = checkVarConstantness name stmtSrc "array"
      checkSetConstantness (LoopStatement _ _ loopStmts) = mapM_ checkSetConstantness loopStmts
      checkSetConstantness (IfThenElseStatement _ _ _ thenStmts elseClauses) = do
        mapM_ checkSetConstantness thenStmts
        mapM_ (mapM_ checkSetConstantness . snd) elseClauses
      checkSetConstantness _ = return ()

      checkVarConstantness name stmtSrc msgPart = do
        mvar <- getVariable name
        case mvar of
          Nothing -> return ()
          Just var -> when (getVarConstness var) $
            throwError $ SemanticError stmtSrc $ "Cannot set constant " ++ msgPart ++ " " ++ getVarName var
              ++ " at " ++ show (getVarPos var)

      -- | Fails if there is exitwhen without loop
      checkNakedExitWhen (ExitWhenStatement stmtSrc _) = throwError $ SemanticError stmtSrc "exitwhen without corresponding loop"
      checkNakedExitWhen (IfThenElseStatement _ _ _ thenStmts elseClauses) = do
        mapM_ checkNakedExitWhen thenStmts
        mapM_ (mapM_ checkNakedExitWhen . snd) elseClauses
      checkNakedExitWhen _ = return ()

      -- | Checking that return types matches, no return bug for you ;)
      checkReturnType (ReturnStatement stmtSrc Nothing) = when (isJust retType) $ throwError $ SemanticError stmtSrc $
        "Type mismatch in return, expected " ++ show (fromJust retType)++ ", but got nothing"
      checkReturnType (ReturnStatement _ (Just expr)) = do
        checkSemantic expr noMsg
        exprType <- inferType expr
        unless (isJust retType) $ throwError $ SemanticError (getExpressionPos expr) $
          "Type mismatch in return, expected nothing, but got " ++ show exprType
        let retType' = fromJust retType
        cond <- exprType `typeSubsetOf` retType'
        unless cond $ throwError $ SemanticError (getExpressionPos expr) $
          "Type mismatch in return, expected "++ show retType' ++", but got " ++ show exprType
      checkReturnType (LoopStatement _ _ loopStmts) = mapM_ checkReturnType loopStmts
      checkReturnType (IfThenElseStatement _ _ _ thenStmts elseClauses) = do
        mapM_ checkReturnType thenStmts
        mapM_ (mapM_ checkReturnType . snd) elseClauses
      checkReturnType _ = return ()

      -- | Checking that all statement tree has returns at leaves
      checkTerminationFlow :: [Statement] -> Bool
      checkTerminationFlow [] = False
      checkTerminationFlow (ReturnStatement _ _ : _) = True
      checkTerminationFlow (LoopStatement _ _ loopStmts : xs) = checkTerminationFlow loopStmts || checkTerminationFlow xs
      checkTerminationFlow (IfThenElseStatement _ _ _ thenStmts elseClauses : xs) =
        if not $ hasLastElse elseClauses then checkTerminationFlow xs
        else all checkTerminationFlow (thenStmts : fmap snd elseClauses) || checkTerminationFlow xs
        where hasLastElse [] = False
              hasLastElse ys = isNothing $ fst $ last ys
      checkTerminationFlow (_ : xs) = checkTerminationFlow xs

instance SemanticCheck Statement where
  checkSemantic (SetStatement src _ name expr) _ = do
    checkVariableName src name
    checkVariableExpr name expr

  checkSemantic (SetArrayStatement src _ name exprIndex expr) _ = do
      checkArrayName src name
      checkIndexExpr exprIndex
      checkVariableExpr name expr

  checkSemantic (IfThenElseStatement src _ cond thenStmts elseClauses) _ = do
    checkCondition cond "if condition"
    mapM_ (`checkSemantic` noMsg) thenStmts
    checkMiddleElse elseClauses
    forM_ elseClauses $ \(mcond, elseStmts) -> do
      F.forM_ mcond (`checkCondition` "condition of if else clause")
      mapM_ (`checkSemantic` noMsg) elseStmts
    where
      -- | Checks that else without condition is last and only last
      checkMiddleElse [] = return ()
      checkMiddleElse [(Nothing, _)] = return ()
      checkMiddleElse ((Nothing, _):_) = throwError $ SemanticError src "Else clause followed by another elseif or else isn't legal"
      checkMiddleElse _ = return ()

  checkSemantic (CallStatement src _ name args) _ = do
    checkFunctionName src name
    checkFunctionArgsCount src name $ length args
    checkFunctionArgs name args
  checkSemantic (LoopStatement _ _ stmts) _ = mapM_ (`checkSemantic` noMsg) stmts
  checkSemantic (ExitWhenStatement _ cond) _ = checkCondition cond "exitwhen"
  checkSemantic (ReturnStatement _ _) _ = return ()

-- | Checks that condition type is boolean
checkCondition :: Expression -> String -> JassSem s ()
checkCondition condExpr msgPart = do
  checkSemantic condExpr noMsg
  condType <- inferType condExpr
  when (condType /= JBoolean) $ throwError $ SemanticError (getExpressionPos condExpr) $
    "Type mismatch for " ++ msgPart ++ ", expected " ++ show JBoolean ++ " but got " ++ show condType

-- | Checks that index expression has type of integer
checkIndexExpr :: Expression -> JassSem s ()
checkIndexExpr exprIndex = do
  checkSemantic exprIndex noMsg
  exprType <- inferType exprIndex
  when (exprType /= JInteger) $ throwError $ SemanticError (getExpressionPos exprIndex) $
    "Type mismatch for array index, expected " ++ show JInteger ++ " but got " ++ show exprType

-- | Checks that expression has valid type for variable
checkVariableExpr :: String -> Expression -> JassSem s ()
checkVariableExpr name expr = do
  mvar <- getVariable name
  case mvar of
    Nothing -> return ()
    Just var -> do
      checkSemantic expr noMsg
      exprType <- inferType expr
      let varType = getVarType var
      cond <- exprType `typeSubsetOf` varType
      unless cond $
        throwError $ SemanticError (getExpressionPos expr) $ "Type mismatch, expected "
          ++ show varType ++ " but got " ++ show exprType

-- | Checks that name of plain (not array) variable exists
checkVariableName :: SrcPos -> String -> JassSem s ()
checkVariableName src name = do
  mvar <- getVariable name
  case mvar of
    Nothing -> throwError $ SemanticError src $ "Unknown variable " ++ name
    Just var -> when (isVarArray var) $ throwError $ SemanticError src
      "Expected plain variable, but got array"

-- | Checks that name of variable exists
checkArrayName :: SrcPos -> String -> JassSem s ()
checkArrayName src name = do
  mvar <- getVariable name
  case mvar of
    Nothing -> throwError $ SemanticError src $ "Unknown variable " ++ name
    Just var -> unless (isVarArray var) $ throwError $ SemanticError src
      "Expected array variable, but got plain type "

-- | Checks if there is actual function name exists
checkFunctionName :: SrcPos -> String -> JassSem s ()
checkFunctionName src name = do
  mfunc <- getCallable name
  case mfunc of
    Just _ -> return ()
    Nothing -> throwError $ SemanticError src $ "Unknown function/native " ++ name

-- | Checks that return type of function is not nothing
checkFunctionReturnType :: SrcPos -> String -> JassSem s ()
checkFunctionReturnType src name = do
  mfunc <- getCallable name
  case mfunc of
    Nothing -> return ()
    Just callable -> unless (isJust $ getCallableReturnType callable) $ throwError $
      SemanticError src $ "Cannot use function " ++ name ++ " in expression, it has nothing return type"

-- | Checks if argument count matches
checkFunctionArgsCount :: SrcPos -> String -> Int -> JassSem s ()
checkFunctionArgsCount src name argsCount = do
  mfunc <- getCallable name
  case mfunc of
    Nothing -> return ()
    Just callable -> let parsCount = length $ getCallableParameters callable
                     in when (argsCount /= parsCount) $ throwError $ SemanticError src $ "Arguments count mismatch, expected "
                      ++ show parsCount ++ ", but got " ++ show argsCount

-- | Checks arguments types
checkFunctionArgs :: String -> [Expression] -> JassSem s ()
checkFunctionArgs name args = do
  mfunc <- getCallable name
  case mfunc of
    Nothing -> return ()
    Just callable -> mapM_ checkArg $ zip3 [1..] args (getCallableParameters callable)
  where
    checkArg :: (Int, Expression, Parameter) -> JassSem s ()
    checkArg (i, argExpr, parameter) = do
      checkSemantic argExpr noMsg
      argType <- inferType argExpr
      let parType = getParamType parameter
      cond <- argType `typeSubsetOf` parType
      unless cond $ throwError $ SemanticError (getExpressionPos argExpr) $
        "Type mismatch at function " ++ name ++ " argument number " ++ show i ++ ", expected " ++ show parType
          ++ " but got " ++ show argType

instance SemanticCheck Expression where
  checkSemantic (BinaryExpression _ op left right) _ = do
    checkSemantic left noMsg
    checkSemantic right noMsg
    if | op == And || op == Or -> left `typeEqual` JBoolean >> right `typeEqual` JBoolean
       | op == Reminder -> left `typeEqual` JInteger >> right `typeEqual` JInteger
       | isArithmeticOperator op -> typeCheckArithmetic op left right
       | isRelationalOperator op -> typeCheckRelational op left right
  checkSemantic (UnaryExpression _ op expr) _ = do
    checkSemantic expr noMsg
    case op of
      Plus -> checkNumeric expr
      Negation -> checkNumeric expr
      Not -> expr `typeEqual` JBoolean
  checkSemantic (ArrayReference src name indexExpr) _ = do
    checkArrayName src name
    checkSemantic indexExpr noMsg
    indexExpr `typeEqual` JInteger
  checkSemantic (FunctionCall src name args) _ = do
    checkFunctionName src name
    checkFunctionReturnType src name
    checkFunctionArgsCount src name $ length args
    checkFunctionArgs name args
  checkSemantic (FunctionReference src name) _ = checkFunctionName src name
  checkSemantic (VariableReference src name) _ = checkVariableName src name
  checkSemantic _ _ = return ()

-- | Checks that expression has specific type
typeEqual :: Expression -> JassType -> JassSem s ()
expr `typeEqual` t2 = do
  t1 <- inferType expr
  unless (t1 == t2) $ throwError $
    SemanticError (getExpressionPos expr) $
      "Type mismatch in expression, expected " ++
        show t1 ++ ", but got " ++ show t2

-- | Checks if expression is numeric type
checkNumeric :: Expression -> JassSem s ()
checkNumeric expr = do
  t1 <- inferType expr
  unless (isNumericType t1) $ throwError $
    SemanticError (getExpressionPos expr) $
      "Type mismatch in expression, expected numeric type, but got " ++ show t1

-- | Performs type checking for expression arithmetic operators
typeCheckArithmetic :: BinaryOperator -> Expression -> Expression -> JassSem s ()
typeCheckArithmetic Summ expr1 expr2 = binaryTypecheckErrorWrapper expr1 expr2 Summ $ do
  res1 <- typeCheckBinaryExpression (oneOfAssertion [JString]) expr1 expr2
  res2 <- typeCheckBinaryExpression (oneOfAssertion [JInteger, JReal]) expr1 expr2
  return (res1 || res2)
typeCheckArithmetic op expr1 expr2= binaryTypecheckErrorWrapper expr1 expr2 op $
  typeCheckBinaryExpression (oneOfAssertion [JInteger, JReal]) expr1 expr2

-- | Performs type checking for relational operators (==, !=, >, <, >=, <=)
typeCheckRelational :: BinaryOperator -> Expression -> Expression -> JassSem s ()
typeCheckRelational op expr1 expr2
  | op `elem` [Equal, NotEqual] = binaryTypecheckErrorWrapper expr1 expr2 op $ typeCheckBinaryExpression equalityAssertion expr1 expr2
  | otherwise = binaryTypecheckErrorWrapper expr1 expr2 op $ typeCheckBinaryExpression (oneOfAssertion [JInteger, JReal, JBoolean]) expr1 expr2

-- | Returns true if general type within specified set
oneOfAssertion :: [JassType] -> JassType -> JassType -> JassType -> JassSem s Bool
oneOfAssertion types gt _ _ = return $ gt `elem` types

-- | Checks that two types are allowed in == and /= operators
equalityAssertion :: JassType -> JassType -> JassType -> JassSem s Bool
equalityAssertion gt t1 t2 = do
 gt' <- getRootType gt
 return $ (gt == t1 || gt == t2) && (gt' `elem` [JInteger, JReal, JBoolean, JHandle, JString])

-- | Type checking binary operator, first assertion takes general type of left and right expressions
typeCheckBinaryExpression :: (JassType -> JassType -> JassType -> JassSem s Bool)
  -> Expression -> Expression -> JassSem s Bool
typeCheckBinaryExpression assertion expr1 expr2 = do
  t1 <- inferType expr1
  t2 <- inferType expr2
  mgt <- getGeneralType t1 t2
  case mgt of
    Nothing -> return False
    Just gt -> assertion gt t1 t2

-- | Wraps error message if assertions are equal to false
binaryTypecheckErrorWrapper :: Expression -> Expression -> BinaryOperator -> JassSem s Bool -> JassSem s ()
binaryTypecheckErrorWrapper expr1 expr2 op checker = do
  res <- checker
  unless res $ do
    t1 <- inferType expr1
    t2 <- inferType expr2
    throwError $ SemanticError (getExpressionPos expr1) $ "Type mismatch, cannot use " ++ show t1 ++ " and " ++ show t2 ++ " in " ++ show op

redpajama_set_name: RedPajamaGithub


text:
U of O releases Committee on Academic Freedom's report
Charley Dutil
The U of O campus. Photo: Dasser Kamran/Fulcrum
Here's a look at the highlights and major recommendations from the report
The University of Ottawa has publicly released the Committee on Academic Freedom's report. The committee, which was created on March 30 to explore issues and challenges surrounding academic freedom and freedom of expression at the University of Ottawa, was headed by retired justice Michel Bastarache and composed of five U of O faculty staff.
The report sought to answer six fundamental questions when it comes to the challenges faced by the University of Ottawa when defining academic freedom and freedom of expression for its members. It also produced seven recommendations in the hopes of improving the university community's understanding of academic freedom and freedom of expression.
A common theme in the report is that the University needs to protect academic freedom as well as freedom of expression. The report calls on the U of O to "unequivocally reaffirm its commitment to academic freedom and freedom of expression, and that it clarify its rights and obligations as an educational institution."
Committee against the censorship of words in a respectful academic context
One of the questions that the committee sought to answer was: "How should the University balance academic freedom with its values of equity, diversity and inclusion?"
This is a question that has been raised countless times in the last year when debating the incidents surrounding professor Verushka Lieutenant-Duval's use of the 'N-word' in a virtual lecture in September 2020.
The committee was clear in its report that it is not in favour of institutional or self-censorship that is apt to compromise the dissemination of knowledge or is motivated by fear of public repudiation.
"The Committee is therefore against the exclusion of words, works or ideas in the context of respectful academic presentations and discussions whose educational goal is to promote the dissemination of knowledge."
The committee says it believes students and the University community must be willing to address sensitive topics in an academic context.
It recommends providing notices in advance when sensitive topics will be discussed that could offend some students so they are not caught off guard. An example of this would be content warnings at the beginning of a sensitive article in a reading.
The committee also recommends the implementation of a diversity and inclusion training program along with a personal consultation service for faculty members.
According to the committee, the consultations they held, showed faculty members often "feel ill-equipped to address" these issues and that they "urgently need information and resources to do so."
Cyberbullying needs to be addressed
A clear offshoot of the Lieutenant-Duval incident was the rise in cyberbullying — many students and faculty members who shared their opinion on the incident were targeted online by individuals with malicious intentions.
The report suggests the University of Ottawa establishes a clear policy to deal with cyberbullying.
"The Committee recommends that the administration establish an action plan not only to fight racism and discrimination, but also cyberbullying — a constantly increasing threat to both freedoms that is more and more difficult to keep in check."
The committee, without outright naming specific incidents, justified the need for this policy by stating it comes from many incidents that have led to faculty and some students feeling unsafe due to cyberbullying.
"The many incidents that left faculty and some students feeling insecure showed that there is a need to establish norms of conduct applicable to students, faculty and other University staff, and measures prohibiting cyberbullying."
"Dialogue and the search for truth will be impossible if differences of opinion give rise to invective and insults, disrespect for diversity or disregard for human dignity. The University must regulate such conduct and possibly review the scope of the principles underlying Policy 121—Statement on Free Expression," reads the report.
Committee wants the U of O to reaffirm its commitment to academic freedom
A common theme of the report was the U of O's need to unequivocally reaffirm its commitment to academic freedom and freedom of expression.
One of the more damning statements in the report was that the institution needs to clarify its rights and obligations as an educational institution.
"The members of the University community must be certain of the University's support when their right to free expression is at stake, and they must be able to rely on an effective mechanism for addressing issues of concern in that regard."
But the report does mention this cannot be done at the expense of silencing marginalized people and groups and that each situation that arises should be evaluated using three criteria — legality, legitimacy, and necessity.
"We believe that three criteria should be used to decide contentious issues: legality, legitimacy, and necessity (based on proportionality)," reads the report. "However, the University will not normally wish to limit its actions to suppressing speech that is illegal since it considers that expressing certain facts and ideas can offend, shock, anger or jeopardize free expression for fear of further marginalization or stigma."
"The University strives to encourage respectful, tolerant and empathetic discourse, and will thus seek a balance, in the same way a professor would not want to disregard the impact of certain teachings."
"Freedom of expression and academic freedom should be vigorously protected, but not at the expense of silencing marginalized people and groups. There is no straightforward solution to this dilemma. Each case needs to be analyzed within its context."
Committee recommends establishment of standing committee on academic freedom
One of the major recommendations made by the committee is for the University of Ottawa to establish a standing committee to review and implement the policy on academic freedom and freedom of expression. This committee's mission would be to strengthen the protections for academic freedom and to handle complaints received about academic freedom at the University.
"In essence, the committee would support the mandate of the Provost and Vice-President, Academic Affairs, to protect academic freedom, thereby increasing the tools at the Vice-
President's disposal for carrying out the position's duties in that regard and strengthening accountability to the University community," reads the report.
The report says that this new committee would have to do more than simply hear from complainants, conduct investigations and impose penalties. The committee would have to define "the nature of the complaint or worrisome incident and subsequently examine the situation by applying known criteria."
The report suggests the committee could study implementing "policies and principles of academic freedom and freedom of expression in all areas of activity (teaching, research, academic conferences, etc.) on campus." This committee would compile an annual report on complaints that have been received and processed and analyzed, then share this report with the vice president, academic affairs.
Although the structure and composition of this committee will be left to the discretion of the U of O administration, Bastarache's committee recommends about five members who are experts in the field with two-year mandates.
What went into creating the report?
The committee's report was late — it was supposed to be released over the summer. Multiple delays made it so it was released this afternoon on Nov. 4. These delays were blamed on translation issues and other technical problems by U of O president Jacques Frémont at Senate and Board of Governors meetings over the last few months.
To create the report the Committee held two rounds of consultations where they invited members of the U of O community to submit briefs or comments sharing their opinions or positions on the issues raised by the committee. In total, the committee received 102 briefs and comments from the community.
Retired justice Bastarache also reached out to faculty professional associations, student associations, support staff and the Action Committee on Antiracism and Inclusion to hear directly from them. Only two groups declined the invitation, the Support Staff of the University of Ottawa (SSUO) and the BIPOC caucus — both did submit a brief.
The Committee also did an environmental scan to research how questions on academic freedom and freedom of expression are handled at other Canadian universities and around the world.
"The Committee obtained and analyzed documents from Canadian universities on the concepts of academic freedom and freedom of expression, in order to see how they are interpreted and applied."
These consultations and research were made to give the committee the clearest picture possible before they made their recommendations to the U of O administration.
"Not surprisingly, the Committee came across significant differences of opinion. There is no consensus at the University of Ottawa or at Canadian universities as a whole, even though most stakeholders believe in the importance of the freedoms in question," concluded the report. "The Committee did not try to sway anyone during its consultations, whose purpose was to let participants have their say. The Committee acted strictly in a listening capacity."
As for its recommendation on if academic freedom or freedom of expression should be further regulated with penalties and consequences, the committee said it didn't believe so but punted the question to its new recommended standing committee.
"With regard to limits on rights, the Committee could find very few helpful precedents, particularly when it came to potential penalties for offenders."
"The Committee proposed the establishment of another committee that would review complaints or situations requiring action by the administration, together with an analytical grid and criteria that would enable consistent, balanced decisions."
"The Committee did not recommend any penalties, as it felt that the system currently in place should be used."
academic freedomcensorshipCharley DutilCommittee on Academic Freedomfreedomfreedom of expressionJacques fremontMichel BastaracheNewsreport on academic freedomstanding committee on academic freedomThe FulcrumUniversity of OttawauottawaVerushka Lieutenant-Duval
Hunt guides his team to shutout victory
Zack Goobie
Walloping Wednesday for women's volleyball
Marc Jan
House of PainT festival celebrates neglected elements of hip hop culture
Kelsey Campbell

redpajama_set_name: RedPajamaCommonCrawl


Achieving your goals when life is hard.
— to achieve your goals, overcome obstacles and enjoy life … even when it's hard.
Moving into a punch seems like a dumb idea.
Yet boxers will sometimes move closer to their opponent to avoid being hit with full force.
As a child, I learned that I could protect my mother and brother if I moved toward my father when he was in a rage. If I moved into his attack, he could not fully extend his arm. And while I still got hit, the blows were softer. And after a while, my father's rage would subside, and he'd stop. At least for that day.
As a child, I realized that I could not stop dad from hitting someone when he was angry.
But … I could choose to be that person.
And could find a way to reduce the hurt.
Most people, two out of three, become victims.
But one out of three become stronger. They become more resilient, confident and stronger.
After the death of my mother and father, I wanted to share what I learned as a boy on how moving into your problems will help you achieve your goals, even when life is hard, or when you set hard goals.
Overcoming Obstacles and Solving your Biggest Problems.
In this audio book I'll share research, tools, and tips to help you achieve your goals, big or small – even when you face obstacles, lack motivation, or will power. I promise, this book is not about motivation, will power or to-do lists. This book is about a mind set that is with you always, even when you feel lazy, procrastinate, or are faced with people working against you.
I recorded this as an audio book so you can listen to it anywhere. And the PDF script is free so you don't even need to take notes. How easy is that!


You will visit the Hikone castle tower, turrets, stone walls and moats etc..
Moreover, you will visist Hikone castle museum and castle town.
You feel like you have slipped back into the Edo Period ( about 200~400 years ago).
Hikone city is near Kyoto city. It takes about 50 min. by JR train. Please vieit Hikone while you visit Kyoto.
Of course, I can guide you in Kyoto, Nara and Osaka.
You will find following items.
I will suit it to a guide starting time that is convenient for you.
There are many beautiful temples and shrine near Hikone castle.
You can also visit there.
Are there interesting spots around here?
Yes. This area is close to Kyoto and Nara geographically and has been culturally influenced strongly by Kyoto and Nara since ancient times. Therefore, there are many famous temples and shrines around here. Moreover, this area was important military spot for feudal lords who tried to rule Japan in the Civil Wars in around the 16 century.
Therefore, there are many ruins of castles.
Kazuhiko was a good tour guide for our group of 6. We were able to understand his English, appreciated his personal stories, and his knowledge of the areas we visited. He was flexible when we wanted to adjust the itinerary due to time constraints. He took us to a lovely, authentic Japanese restaurant for lunch. A pleasant experience all in all.


text:
Albert Garlington may refer to:

 Ernest Albert Garlington (1853–1934), U.S. Army general and Medal of Honor recipient
 Albert Creswell Garlington (1822–1885), brigadier general in the South Carolina Militia

redpajama_set_name: RedPajamaWikipedia


1. Biryukov V.M., Berdnikov N.V., 1993. The paragenetic relation between charoite mineralization and alkali metasomatism. International Geology Review 35 (7), 585–602. https://doi.org/10.1080/00206819309465544.
2. Bondarenko N.V., 2009. The Geological and Structural Position and Genesis of the "Sirenevyi Kamen" Charoite Deposit. PhD Thesis (Geology and Mineralogy). Moscow, 150 p. (in Russian).
3. Konev A.A., Vorobjev E.I., Lazebnik K.A., 1996. Mineralogy of the Murunsky Alkaline Massif. SIC UIGGM, Publishing House of SB RAS, Novosibirsk, 221 p. (in Russian).
4. Marchuk M.V., Medvedev V.Y., Ivanova L.A., Sokolova T.S., Danilov B.S., Gladkochub D.P., 2016. Charoite. Experimental studies. Geodynamics & Tectonophysics 7 (1), 105–118. https://doi.org/10.5800/GT-2016-7-1-0199.
5. Reguir E., 2002. Aspects of the Mineralogy of the Muran Alkaline Complex, Yakutia, Russia. National Library of Canada, 193 p.
6. Rozhdestvenskaya I., Mugnaioli E., Czank M., Depmeier W., Kolb U., Reinholdt A., Weirich T., 2010. The structure of charoite, (K,Sr,Ba,Mn)15-16 (Ca,Na)32[(Si70(O,OH)180)](OH,F)4*nH2O, solved by conventional and automated electron diffraction. Mineralogical Magazine 74 (1), 159–177. https://doi.org/10.1180/minmag.2010.074.1.159.
7. Sokolova T.S., Danilov B.S., Dorogokupets P.I., 2016. Genetic features of charoite and tinaksite according to the data of high temperature decomposition reaction thermodynamic modeling. Proceedings of the Siberian Department of the Section of Earth Sciences of the RAEN. Geology, Exploration and Development of Mineral Deposits (1), 50–58 (in Russian).
8. Vorobjev E.I., 2008. Charoite. Geo Publishing House, Novosibirsk, 140 p. (in Russian).


This is a question for everyone. Make sure to comment on one of my animes. .3.
Q: Do U have a crush on someone?
Q: Do u have a bully?
Q: Do u know you have a secret Admire yet?
Q: Did u break up with someone :(?!
If you have anymore questions, say: :U (And if u need to ask me, just lemme know!) But u gotta make sure u not g@y, But make sure u have a crush on someone, dis important, u have to listen...Do u know deh weh? Make sure no bullies. If u have any trouble, Juat be brave! And ask me for more! :3 If u use a bad laungue, U won't go to where u want to go! And if u have a Secret Admire, Or u like or have a crush on someone! Ask me what u gonna need for advice :D! But breaking up with someone is the same thing as...Umm...What that called? Oh yeah, Cheating on! Example, not really, But if u see me play roblox robloxian highschool, lots of boys would like me. Username: Kawaiilillu. In robloxian highschool, my name would be Lil Kawaii! Alot of people like me. I don't know what go say! do u know? Well, if u want, just help me with advice! Thx xD!


verb (used with or without object), intertwined, intertwining.
1640s, from inter- + twine (v.). Related: Intertwined; intertwining.
[in-ter-twahyn] /ˌɪn tərˈtwaɪn/ verb (used with or without object), intertwined, intertwining. 1. to together. /ˌɪntəˈtwaɪn/ verb 1. to unite or be united by twisting or twining together Also intertwist v. 1640s, from inter- + twine (v.). Related: Intertwined; intertwining.
[in-ter-twist] /ˌɪn tərˈtwɪst/ verb (used with or without object) 1. to together: intertwisted roots. Synonyms: intertwine. noun 2. the act of intertwisting or the condition of being intertwisted.
[in-ter-tahyp] /ˈɪn tərˌtaɪp/ Trademark. 1. a brand of typesetting machine similar to the Linotype.
Disclaimer: Intertwine definition / meaning should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional. All content on this website is for informational purposes only.


text:
Q: How can I run 2 already installed OS at the same time? I have Win7 and Ubuntu installed on my PC, and I can choose which to run at boot time. I would like to be able to run the Ubuntu from within the Win7. Tools like VMWare allows one to create a new installation of a guest OS, which could then be run alongside the hosting OS. However, I already have the Ubuntu fully installed on my hard drive, and I'd like to maintain the dual boot option.
Ideally, I'd like to be able to create a new virtual machine on my Win7, but instead of installing a new guest OS, just direct it to the existing installation. Is that possible?

A: This shows how to boot Windows in Linux, I believe reverse should be possible:
https://serverfault.com/questions/76301/start-windows-in-virtual-machine-from-real-hard-drive-partion

A: If I understand your question correctly, I believe this is what you are looking for - http://ubuntuforums.org/showpost.php?p=3118462&postcount=5

A: Check this out, WUBI installer

redpajama_set_name: RedPajamaStackExchange


Center Stage began in 1972 as Stewart Theatre Presentations, with performances of jazz, classical theatre, Broadway shows and dance. As the Broadway musical hit its peak in the late '70s, Center Stage added a Broadway series in the larger downtown Memorial Auditorium for a number of seasons. By the mid-1980s, Center Stage had established a regional and national reputation for presenting a performing arts season of the highest artistic excellence with an emphasis on artistic integrity, inclusion and diversity, and relevance and accessibility. In 1998, the Center Stage office expanded to include Arts Outreach, serving the six visual and performing arts programs of Arts NC State.
Community Engagement Activities furnishes workshops, master classes, and other informal opportunities to work directly with many of the artists of Center Stage.


Dr. Youk enjoys spending time with his wife, two sons, and daughter. He also enjoys sports and exercise.
Dr. Youk grew up in Los Angeles playing numerous team sports. He attended UC Berkeley and moved cross country to begin medical school education at the University of Virginia School of Medicine.
He then completed training at Fairfax Family Practice Residency Program (Medical College of Virginia). Now he is married with three children, living in Fairfax, Virginia. He continues to stay active, enjoying various sports and exercise as a hobby.


text:
The roots of anger
Diocese trains adults in child abuse prevention
Fighting for the 'common good'
By Lara Pickford-Gordon,
Email: lpgordon@rcpos.org
Twitter: @gordon_lp
Corruption is an illusion of "fast and easy gains". The reality, Pope Francis told judges, administrators and staff from Italy's court of audit March 18 is that it "impoverishes everyone, erasing trust, transparency and integrity from the entire system. Corruption disheartens individual dignity and shatters all good and beautiful ideals."
The Fight Against Corruption was the theme of an international conference hosted by the Vatican's Pontifical Council for Justice and Peace June 2–3, 2006. A statement on the Vatican website states corruption crosses all sectors and lack of transparency in international finances facilitated the climate for corruption.
The statement cites the Compendium of the Social Doctrine of the Church on the impact of political corruption: it compromised the correct functioning of the State, had a negative influence on the relationship between those who govern and the governed.
"It causes a growing distrust with respect to public institutions bringing about a progressive disaffection in citizens with regard to politics and its representatives, with resulting weakening of institutions" (No. 411).
Corruption can deprive people of "a basic common good—that of legality: respect for the rules, the correct functioning of economic and political institutions and transparency". The practice and culture of corruption must be replaced by the practice and culture of legality.
The statements talk about a "human ecology" (Centesimus Annus, 38)—the human environment. Just as the natural environment has been given to man, "man too is God's gift to man" and there must be respect for "the natural and moral structure with which he has been endowed".
The family is the first structure of the human ecology and responsible for the early formation of ideas about truth and goodness and teaching about love. Man is also "conditioned by the social structure in which he lives"—education and environment.
The absence of a human ecology, according to the statement, enables corruption to grow. "…corruption implies a whole series of relationships and complicity. It involves the numbing of consciences, blackmail and threats, unwritten agreements and conspiracies that first involve, overall, people and people's moral conscience, and after, their structures."
It points to the important work of moral education and formation of citizens, and the duty of Church inclusive of all her communities, institutions etc to take on a major role in preventing corruption.
Integrity advocates in schools
The TT Transparency Institute (TTTI) is trying to influence "a cultural change, change in behaviour, change in what is accepted as the norm" by targeting "young" minds.
Partnering with the Integrity Commission of Trinidad and Tobago and the National Council of Parent-Teacher Associations in 2018, the School Integrity Club Project (IClub) was launched for seven secondary schools. They were: Queen's Royal College, St George's College, Hillview College, Bon Air Secondary School, St Joseph's Convent, San Fernando, Williamsville Secondary and Speyside High School, Tobago.
TTTI Chair Dion Abdool said, "The I Clubs have had significant impact on the schools and has become the platform where students influenced other students to change poor behaviour patterns. It is the goal of TTTI to establish these clubs in all schools in Trinidad and Tobago."
Integrity Clubs seek to instil integrity and ethical conduct to counter some of the problems and ethical challenges being experienced in secondary schools. These challenges include: disrespect for authority, indiscipline, bullying, fighting, poor anger management and conflict resolution. Integrity Clubs are designed to help instil in students and teachers the core values of respect, fairness, compassion, integrity, honesty and responsibility.
At the Williamsville Secondary the club launched September 28, 2018 with an anti-bullying skit showing the impact of bullying on victims. The club began with discussion on what is "integrity". The concept was abstract to the students and viewed as having "little to do with them".
A few students were selected to be Integrity Ambassadors and received leadership training with a former principal. They are part of the Integrity Club steering committee which also comprises the head boy and girl, captain of the football team and head of the students' council.
The school decided to tackle the problem of bullying using different approaches. A Friendship Day was held January 25 in which students registered and got materials to create friendship wrist bands with affirming words. An anti-bullying expression tree was placed in a central location of the school February 28; students placed notes about how bullying made them feel and what they would like to tell the bully.
While the pilot was for six months, the club continues to function. Meeting on Tuesdays during the lunch break, students play games which encouraged positive values.
Catholic News was told the impact of the Integrity Club wasn't something which would be seen immediately but it has changed the "aura" of the school. The feedback may be anecdotal but doing homework, not telling lies, not participating in bullying and speaking out when they see wrong things happening to peers are positive signs.
The Word of God – God's self-disclosure
Take time to understand the Word – start at the end to interpret the beginning
CFC celebrates silver jubilee, challenged to move forward
A chosen one of God who understood sacrifice
Launching into the written word with God's help
Making Room in the In"
The beautiful soul and spirit of Bernadette
Bernadette Salandy – a good and faithful servant
Tweets by @CatholicNewsTT
Are you ready to send your children back to physical school?


text:
US Climbs and Treks: Pandemic Options
Categories: Safety, Health, Travel Tips
There's a certain allure to an international climb, but the pandemic has reminded climbers of the excellent options available in the United States.
Hikers can choose to traverse flat terrain along a mountain or a coastline. Trekkers hike for a longer period of time, setting up camp or staying at a lodge along the way. Climbers trek at a higher altitude, exploring rugged terrain at low levels of oxygen.
With international travel unpredictable, many American climbers and trekkers – and some international ones, too – are looking at options in the U.S.
Gordon Janow of Alpine Ascents said his domestic programs are doing well.
"We're full for Mount Rainier, which is a three-day climb. We're full for Mount Baker and Denali is almost full for next year," he said.
Lukas Furtenbach, owner of Furtenbach Adventures based in Innsbruck, Austria and a Global Rescue Safe Travel partner, believes U.S. peaks offer almost everything.
"Many of them are a perfect training ground for the bigger international peaks. Customers who planned international expeditions for 2021 are using this year to gain some more experience," Furtenbach said. "For climbers and mountaineers, it is not too bad not being able to travel abroad."
Penn Burris, a senior advisor at Global Rescue and former director of operations/CFO of the American Alpine Club, agrees.
"The Sierra Nevada, the Teton Range, The Needles, the Adirondack Mountains — there are all these places in the U.S. where you can practice your craft whether it be hiking, climbing or trekking," he said.
How US Peaks Differ
Comparing U.S. peaks to their international counterparts exposes some distinctions and many similarities.
"Our mountains in the Pacific Northwest are very similar to that of the European Alps, however the lack of infrastructure in the U.S. provides a level of remoteness and solitude not often experienced in popular venues in the Alps and Nepal," said Mark Allen, owner and lead IFMGA guide at The Mountain Bureau based in Seattle, Washington. Allen is referring to the custom of using Sherpas and other support personnel for non-U.S. mountaineering.
"Many mountains in the United States are remote compared to international peaks, where you can walk out the front door of your five-star hotel, put on a backpack and take a rail car into a Swiss Alp," Burris said. "A climb in the Grand Tetons, however, there's a six- or seven-hour approach to get to the base of the mountain. It takes a lot of effort to pack in before you even start climbing."
Burris, who has more than three decades of mountaineering, guide and wilderness medicine experience with the American Alpine Club and the Colorado Mountain Club, notes climbs at lower altitude can provide the same experience as a higher altitude climb, minus the altitude.
"There's a certain excitement going to Europe for a climb, but U.S. peaks will get you ready for your next international climb. Conditioning, strength, mental training, solo camping, practicing with your gear — efficiency translates into speed and that's the safest way to climb in the outdoors," Burris said. "You don't have to practice at 18,000 feet; you can be at 7,000 feet. It's a great time to explore your own backyard."
The U.S. may not offer as many high-altitude choices, but there are some rugged options.
"In the White Mountains of New Hampshire or Green Mountains of Vermont, the vertical rise can be significant," Burris said.
While Denali in Alaska is currently closed for 2020, the Sierra Nevada range in California is another U.S. example of a fast vertical rise, rising around 8,000 feet in 10 miles.
The North Cascades, a glaciated volcano with lots of snow coverage, is also considered an excellent training ground for any glaciers you might climb overseas.
"Many people don't realize how world class the North Cascades experience is and they may be a Washington resident," Allen said.
Regardless of where climbs and treks are taking place, everyone is putting COVID-19 protocols in place.
Whether you solo or with a guide, Global Rescue members also have access to services for pre-trip planning and risk assessment, such as coronavirus hotspots and testing facilities. During the trip, if illness or injury occurs while you are 100 miles away from home, field rescue and emergency medical evacuation services are available.
Furtenbach Adventures offers a 100% refund policy for cancelled trips, as well as enforcing physical distancing, reliance on small groups, use of masks during transport, gear disinfection and insurance.
"For our basecamps for international expeditions in 2021 we are testing on location with FDA-approved equipment. We plan to run our basecamps as closed systems with every person that enters being tested on the spot by our team doctor," Furtenbach said.
Greg Vernovage, program director and Everest expedition leader at International Mountain Guides and a Global Rescue Safe Travel partner, has put in more than two dozen protocols for his Mount Rainier climb.
"We would always drive people to Mount Rainier, now you have to self-drive. We have a gear check at our office, which is done outside in groups of four or less. We're not cooking for clients anymore; instead we're providing hot water for freeze-dried meal prep," he said.
So, how do climbers and trekkers feel about all this? Customer attitudes have been understanding and positive.
"People are excited to get back to doing the things they love. People recognize and appreciate the lengths we go to in order to mitigate exposure to programs. Feedback has been good," Allen said.
Click here to learn more about Global Rescue travel services memberships.


text:
FBI arrests Ohio County Commissioner on bribery charges
A Commissioner of Cuyahoga County in Ohio was arrested by FBI agents early Wednesday morning as part of a larger federal probe into corruption in the county.
Seven other Cuyahoga County officials, labor leaders, and business people have also been arrested.
Commissioner Jimmy Dimora, age 55, is accused of using his public office to obtain free home improvements, prostitutes, and trips.
"The agents arrived in two vehicles and knocked on the door for a few minutes before someone eventually answered. The agents then entered the home, and left with Dimora in handcuffs," NewsChannel5 reports.
In addition to Dimora, five others were arrested as part of the 139-page indictment , including Cuyahoga County Common Pleas Judge Bridget McCafferty, Union Local Business Manager Robert Rybak, Auditor's office employees Jerry Skuhrovec and Michael Gabor, and former Reliance Mechanical President and CEO William Neiheiser.
The second indictment charged Deputy Chief Auditor Samir Mohammad, and the third indictment charged Cuyahoga County Common Pleas Judge Steven Terry.
All of those arrested will be arraigned in court around 12:30 Wednesday afternoon. Dimora will be the first one arraigned, followed by the seven others.
Dimora is considered to be the top target of the ongoing County corruption probe , especially after former County Auditor Frank Russo was charged in a 21-count criminal information last week.
"The charges against Dimora include allegations that he took bribes in return for favors, including the steering of county contracts," reports Fox 8 News.
The exact breakdown of charges is as follows:
All but five of the 31 counts on the first indictment apply to Dimora. Twenty-two are for bribery. Two others are for fraud and bribery. He is also charged with one count of conspiracy to obstructing the county corruption investigation and one count of obstructing of the county corruption investigation.
"Defendants who have already pleaded guilty to related charges told prosecutors they performed free home improvements and even provided Dimora with a prostitute during a trip to Las Vegas," adds NewsChannel5.
The arrests come after a two-year investigation by the FBI, the IRS and the U.S. Attorney's office.
Since 2008, Dimora has denied any wrong-doing.
"While there is no pleasure in arresting sitting judges, a corrupt commissioner and others, there is satisfaction in knowing the people of Cuyahoga County will now see what justice looks like," said special agent C. Frank Figliuzzi.
Below is video from Fox 8 News.
Here is how Jason Crow 'pulled rank' on John Roberts — and exposed the Chief Justice's bias
Former Army Ranger Jason Crow repeatedly drew upon his experience serving three tours in Iraq and Afghanistan during his prosecution of President Donald Trump as an impeachment manager.
Crow, who was awarded the Bronze Star and retired as a Captain, attended law school after his military service before successfully winning a seat in Congress during the 2018 midterm elections.
Elie Mystal, a justice correspondent for The Nation magazine, explained how Crow pulled rank on Supreme Court Chief Justice John Roberts.
Mystal broked down how Crow put Roberts in his place with the subtle question of whether senators were getting restless and needed a break.
Rape trial told Harvey Weinstein a 'seasoned' predator
UN report on Saudi Crown Prince Mohammed bin Salman's hacking of Bezos's phone raises questions over other potentially compromised elites
Lindsey Graham goes berserk at impeachment presser: 'I'm not covering up anything, I'm exposing your hatred!'


Are you taking Honors Chemistry or AP Biology during the 2014-2015 school year?
Bring any questions/materials/etc. you have questions about.
Gather in the auditorium and wait to be collected.
If you haven't completed any chapters of the review book, you really should. Complete them, answer the questions at the end, check your answers, and let me know if you have any questions.
You should try to complete 1-2 Castle Learning review assignments per day, along with at least one of the assigned Regents Exams. Please let me know if you have any questions about any thing that you are doing. I can help via email, or at extra help.
Extra help: AM- Every Morning. PM- Every Afternoon except for Thursday.
Regents Review Classes: Tuesday and Thursday after school in Room 170.
Please bring in your textbook if you haven't yet.
Please work on something from the Regents Review section above.
Please bring your review book to class for the rest of the week.
Complete the Regents Exam that you received in class today. Bring it with you to class on Monday.
Continue working on your final projects.
Sign up for food for Thursday if you haven't yet (check district email for link).
If you are presenting tomorrow, make sure you are ready to do so.
Make sure to bring in your food items tomorrow!
No Homework! Never again!!! HOORAYYYY!!!!!!!
TAKE THE CLASS SURVEY (click here)!
Complete the June 2012 Practice Regents at the end of the Review Book.
Please bring in any questions you might have from this exam (or any other questions) to Extra Help.
Complete the Know thy Reference Tables Activity if you were not in class on Friday. Submit on Wednesday, 6.4.
Work on your review book assignment for the week (the June 2012 regents at the end of the book).
Do some castle learning review assignments.
Complete the extra-credit review activity (if you want to).
Take one of the regents exams available on Castle learning. Check your answers. Bring in the full text of one question you got wrong (feel free to print the screen). This will count as a CP grade.
Continue working on final project.
Bring in textbook (if you haven't already).


American Open Currency Standard (AOCS) was a non-profit organization opposed to fiat money and wishing to expedite the use of metal as money. In accordance with its mission, AOCS granted approval to new currencies, helped new currency issuers to establish brand identity, and encouraged merchants to accept AOCS-approved currencies. AOCS was started in 2007 by Robert Gray, who was formerly a Regional Currency Office for Liberty Dollar and was the Executive Director of AOCS. Robert Gray testified before the United States House Financial Services Subcommittee on Domestic Monetary Policy and Technology when congressman Ron Paul was Chair of the Committee.


Jason Priem, Kaitlin Costello, and Tyler Dzuba, graduate students from UNC, examined Twitter usage for over 8000 scholars from five American and British universities.
The results? Sorry Twitter. Scholars are just not that into you.
← Real-Time Stats from Google Analytics: Could we integrate the data with our UCSF Profiles activity stream and future dashboards?
1) They seem to be saying that using Twitter is the same as posting on Twitter. However, I think a lot of people (scholars or not) probably follow Twitter feeds without ever posting. Does this detract from its value?
2) I'm not sure how they are reporting on who is "not on Twitter". They eliminated so many unknown Twitter handles that it seems overwhelmingly likely that many of their subjects arr using the system, just not that easily identified (they even say that their number is an undercount). So, the box in the upper left seems questionable to me.
Overall, I see this data as showing that more scholars are starting to use Twitter. Instead of being "not that into you", I think they are just shy and a bit awkward right now….But given time it could still bloom into romance!
I agree with Peter. I know of a couple of scientists who use Twitter as a search engine and "alert system" without ever posting something. For example, they tell me that it's faster than browsing individual journal websites.


'Upon This Rock' is our annual theme for 2019 and this phrase comes from Matthew 16:16-20. All our Sunday series for 2019 will be based upon phrases from these verses.
Our first series from the Bible in Matthew 16 Jesus asks the questions of his disciples "Who do people say that I am?" Peter answers "You are the Messiah, the Son of the living God." Peter had grasped the truth of who Jesus was.
In the Bible Jesus has many names attributed to him, and in this short series leading up to Easter we will look at some them.


Eni bitumen for industrial use is produced in dedicated plants using suitable processes. The careful selection of crude oil makes it possible to achieve optimum final properties for the formulation of the bitumen-polymer compounds used in the production of waterproof membranes. The industrial grades are designed also for other applications, such as primer for paints and bituminous mastics.


Fine leather bindings for presentation books & display albums. Cases & boxes, for photographers, designers, etc.
We cover all University thesis binding specifications and requirements for hard and soft covers. Simply follow the easy submission process on our website, and leave the rest to us.
Bookbinder and trade finisher offering a full range of finishing and binding services. Thesist specialist & short run case binding.
Bookbinding, Boxes Makers, Pitch and Proposal Presentations, Foil Blocking and Creative Finishing. Part of the MJ Group.
We have been offering a printing & binding service to individuals and professions, legal in particular, for over 30 years.
All types of binding including photographers portfolios & thesis. Presentation binding & boxes, restoration & repair.
Based in London we provide exceptional print and binding services for students, colleges and universities throughout the UK.


text:
12 Hormone Altering Chemicals
Home>Greening Healthcare
Greening Healthcare
The Deirdre Imus Environmental Health Center® is dedicated to improving indoor air and eliminating toxins from the environment. It is fitting that our award-winning Greening The Cleaning® program originated at Hackensack University Medical Center (HUMC). Since 2001, it has become a springboard for other healthcare facilities to learn not only about the advantages of green cleaning, but to accelerate programs that put broader greening concepts into practice.
We believe in the value of holistic, integrative medicine that considers the potential impact of environmental factors on disease -- and wellness.
We believe in the importance of a healthy, organic diet, free of pesticides and animal hormones.
This page summarizes content and resources related to greening healthcare.
LEED is Green Building
LEED, or Leadership in Energy and Environmental Design, is the most widely used green building rating system in the world. Available for virtually all building, community and home project types, LEED provides a framework to create healthy, highly efficient and cost-saving green buildings. LEED certification is a globally recognized symbol of sustainability achievement.
Practice Greenhealth is the source for environmental solutions for the health care sector and lends support to create better, safer, greener workplaces and communities.
Practice Greenhealth is a nonprofit membership organization founded on the principles of positive environmental stewardship and best practices by organizations in the health care community.
Health Care Without Harm seeks to transform health care worldwide so that it reduces its environmental footprint, becomes a community anchor for sustainability and a leader in the global movement for environmental health and justice.
The Sustainability Roadmap for Hospitals
The Sustainability Roadmap site is intended to provide tools and resources that are vendor-, product-, and service provider-neutral. All Roadmap materials are available for download without charge. We seek content expertise from the entire health care community, including hospital staff and industry experts. However, all content submissions are reviewed by multiple ASHE, AHRMM, and AHE committees and volunteers before they are published on the Roadmap.
Deirdre Imus's Mission to Green up Toxic Hospitals
(GreenBiz.com)
Hospitals Go Green
(Wall St. Journal)
The Sarkis & Siran Gabrellian Women's & Children's Pavilion at Hackensack University Medical Center
Pavilion Introduction
Women's and Children's Hospital Named Top 10 Green Hospitals In Country
Tour the Gabrellian Women's and Children's Pavilion
Learn more about one of America's first environmentally responsible and sustainable healthcare facilities as seen in this pull out insert in the The New York Times.
Click on the images to view a PDF of the inserts...
Green Guide for Healthcare http://www.gghc.org/
"Best Practices for Creating High-Performance Healing Environments"
GTC Products Order Here
Hospitals & Affiliations
Joseph M. Sanzari Children's Hospital
Donna A. Sanzari Women's Hospital
John Theurer Cancer Center
David & Alice Jurist Institute for Research
Heart & Vascular Hospital
HackensackUMC Mountainside
HackensackUMC at Pascack Valley
GTC Programs
Nondiscrimination Philosophy
CABVI
Imus Ranch
Deirdre Imus Center
Translation service provided by Google. HackensackUMC is not responsible for the accuracy of translation or any other aspect of service provided by the GoogleTranslate tool. Users should not make medical decisions without first consulting with their physician.
Site Map|Privacy Policy|Media Center
©2019 Hackensack University Medical Center. All rights reserved.


Dagger door handle is made of brass and is handmade by the skiled artisans of India. The dagger door handle is has fine engraving from where it is held. Use it as a wall art or gift it to your friends or relatives. The green patina gives it a very rustic look .


Year 4 performing their Indian Dance routine!
Group 1 performing their Bollywood Routine!
Group 2 performing their Bollywood Dance Routine!
The end of the fire - a great experience for Year 2!
The start of the Great Fire Recreation!


text:
Q: I have a select query that gets me a single column as a result. Now I need to put all those column values in CSV format --------------------
- # - timesheet_id -
--------------------
- 1 -      1       -
--------------------
- 2 -      2       -
--------------------

Now the format required should be in "1,2" which is nothing but the values of timesheet_id.
Somebody please help.

A: SELECT GROUP_CONCAT(timesheet_ID) as TimeList
FROM   tableName
INTO   OUTFILE '/tmp/timeIDList.csv'  -- file output path
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'

SOURCE

*

*Save MySQL query results into a text or CSV file

*Export CSV directly from MySQL

A: In mySQL you could use GROUP_CONCAT for that
SELECT GROUP_CONCAT(timesheet_id SEPARATOR ',') FROM table


text:
SOS STAYING FIRMLY BEHIND THE U'S
Cambridge United are delighted to announce that SOS Leak Detection have expanded their partnership with the Club.
SOS have signed a deal to continue as the U's back of shorts sponsor and will have their logo displayed prominently on all three sets of shorts worn by the men's first team.
They have now expanded their sponsorship for 2019/20 to include their branding on the back of all replica shorts.
SOS are a national multi award winning Specialist Company dedicated to delivering right first time solutions in the provision of water leak detection. Through the application of the latest technological advances and highly trained and experienced surveyors, they not only minimise disruption but keep excavation and disturbance to a minimum whilst reducing ongoing water damage to domestic and commercial properties.
With services covering flat roof and balcony water ingress, through to plumbing, heating and swimming pools with same visit asbestos and water sampling carried out where required.
SOS Leak Detection Partner Nik Day: "We are all thrilled and of course very proud that SOS Leak Detection will be once again partnering with the club for the 2019/20 season. It is an absolute pleasure to be part of this superb football club and our company exposure from the back of shorts sponsor has provided us with some excellent business and friendship opportunities and I am eagerly awaiting the start of the season."
Cambridge United Head of Partnerships, Nick Fairbairn: "We've built a really strong relationship with Nik and the team at SOS over the past couple of years, so we're absolutely thrilled they have extended their partnership and strengthened it by adding their logo to all replica shorts. They are a company that are growing fast and it's brilliant that they see the partnership with us as a vehicle to help with that. Nik is also a lifelong U's fan and his passion for the Club is obvious to anyone that meets him."


text:
Apply for support
Do you have a charity that supports women's health and wellbeing? We may be able to help.
BACK TO PARTNERS
Heart & Stroke
Nine in 10 women in Canada have at least one risk factor for cardiovascular disease. That's why women's heart and brain health is a mission priority for Heart & Stroke. They are committed to reducing the impact that heart disease and stroke have on women by investing in research on women, and building awareness of these diseases that are a leading cause of death in Canada.
With support from the LOVE YOU by Shoppers Drug Mart™ program Heart & Stroke is embarking on a groundbreaking three-year partnership to transform women's heart and brain health in Canada. Together, we will build awareness of these diseases to empower women to protect their heart health and ultimately save lives.
For more than 60 years, Heart & Stroke has been a leading advocate for heart health; with their work improving the lives of countless Canadians. Heart & Stroke, together, in partnership with the LOVE YOU program will continue efforts and strive to close the gender gap on women's cardiovascular health.
The Heart and Stroke Foundation of Canada recognizes the important contribution of its sponsors. However, this is not an endorsement.
™The heart and / Icon on its own and the heart and / Icon followed by another icon or words are trademarks of Heart and Stroke Foundation of Canada used under license.


The modern computer is so powerful that a casual knowledge of programming suffices for most of its users. However, a variety of circumstances can abruptly require a much deeper understanding: the need to structure a program carefully to avoid being overwhelmed by its complexity, the need to insure reliability beyond what can he achieved by debugging, or the need to utilize computing resources efficiently. Beyond such practical considerations, there is an inherent intellectual satisfaction in mastering the fundamental concepts of programming. The aim of this book is to provide such mastery concept by concept. For example, the reader is expected to understand proofs of correctness and order-of-magnitude time requirements for simple integer algorithms - such as log n exponentiation - before the concept of arrays is introduced. A similarly thorough understanding of array manipulating algorithms is expected before the introduction of procedures.


text:
Demolition News Demolition News is the premier source of updated information about the global demolition industry.
Rigorous control for ghost ship dismantling…
February 14, 2009 General
Ship dismantling team face strict regulation to control ghost ship project
The Environment Agency has announced rigorous regulatory controls to ensure that the French naval ship Q790 (formerly Le Clemenceau) is "dismantled and recycled in a safe and environmentally sound manner".
As we reported, earlier this week the Q790 arrived from Brest in France and joined the four US "ghost ships" at Able UK's ship dismantling facility at Graythorp, Hartlepool, waiting to be processed.
Video Exclusive – Demolition News reports from the NDTG AGM…
Demolition News brings you two video exclusives from the recent NDTG annual general meeting.
The Annual General Meeting of the UK's National Demolition Traning Group took place in London's Docklands recently; and Demolition News' cameras were on hand to capture all the major talking points.
In this first video, NDTG chairman David Clarke provides a review of the group's activities during the year:
In this second video, David Clarke and Howard Button provide an update on the group's negotiations with CPCS:
Yes, it is another time-lapse video, but…
The story of a demolition project in time-lapse format.
A few days ago, we said that there would be no more time-lapse videos appearing here; that they had become tired and old-fashioned; and that they would never again darken these hallowed pages.
And then we saw this one.
It was shot back in the Summer of 2008 but the quality, coupled with the fact that it tells the story of a demolition from beginning to end, meant that we just had to break our rules. Enjoy!
http://vimeo.com/2673719
Remote controlled demolition…
Earthmovers magazine offers useful insight into remote controlled demolition techniques
Just came across this interesting article on the subject of remote controlled demolition.
The article was originally published int he February edition of the UK trade magazine, Earthmovers.
Waste Management Inc. hit by recession…
Economic downturn hits profits at US' largest waste management company.
Waste Management Inc, North America's largest trash hauler, said fourth-quarter profit fell 29 percent because of a drop in U.S. construction and lower prices for recycled materials.
Net income declined to $218 million, or 44 cents a share, from $309 million, or 61 cents, a year earlier, Houston-based Waste Management said today in a statement. Sales decreased 7.5 percent to $3.1 billion.
Web cam follows harbour demolition…
Harbour developers use web cam to chart demolition progress
The Erie Canal Harbor Development Corp. has launched Harbor Cam as an online viewpoint for people to watch progress of the $315 million Canal Side project along lower Main Street in Buffalo, New York.
The camera, set on the top floor of HSBC Center, gives a bird's eye view of the Canal Side property that extends from the New York State Thruway south towards HSBC Arena. The camera went live yesterday afternoon.
For the full story and to access the web cam feed, please click here.
Landmark water tower demolished…
Canadian press reports on the dismantling of a water tower in Orillia.
A 26-metre water tower bearing the city's name has stood in Orillia for more than 50 years, but the decaying landmark was beginning to wear out its welcome. One of the challenges to its demolition was that the six-legged tower stood on a small lot, about 21 by 46 metres, surrounded by residential housing. If the tower were toppled, it could have caused damage to surrounding properties built in its shadow.
For the full story from Daily Commercial News and Construction Record, click here.
Howard Button joins Twitter…
Howard Button, CEO of the UK's National Federation of Demolition Contractors, has become the latest industry personality to climb aboard the Twitter bandwagon.
As we have reported in recent days/weeks, the Twitter phenomenon has spread through the tech and celebrity worlds and is now being embraced as a rapid-fire communications tool by a whole host of individuals, companies and organisations.
Twitter users wishing to see what Howard is doing should for to www.twitter.com/nfdcceo and hit the follow button below his photo. (If you haven't done so already, you might also want to go to www.twitter.com/demolitionnews and follow us too)
And if there are any other demolition industry Twitter users out there, please let us have your Twitter name so we can see what you're doing.
Freeley demolishes student village…
Report on the demolition of a student village at Manchester's Salford University.
The contract to demolish a large student village on the Salford University campus and create a wooded landscaped area has been successfully carried out by Manchester demolition contractors J Freeley Ltd.
The student village, situated on a 1.2 hectare site at Castle Irwell, had suffered from lack of investment and had become surplus to the University's requirements, so the decision was taken to demolish it. The village comprised a total of 46 housing units in a number of three-storey accommodation blocks.
Health & safety was the top priority for the contract administrator, Paul Kirkup, from Salford University. Because of the high amount of heavy vehicle and demolition equipment movement within the populated area, separate entrance to the demolition site was constructed exclusively for J Freeley vehicles. J Freeley operatives were given a tight deadline to complete the demolition during a holiday period when few students were attending university.
"Vehicle movements were tightly managed and regulated throughout the project to ensure there was minimal disruption to the small number of university staff and students in the occupied parts of the accommodation area," said Kirkup. He pointed out that sustainability was another key issue addressed during the demolition project.
"We were keen that as much demolition waste as possible generated during the project was recycled for future use rather than going to landfill. All metals, timbers, plastics and other materials were streamed and sent away for recycling. A total of 10,000 tonnes of concrete and bricks were
crushed and processed on site for use as recycled aggregates for future construction and civil engineering projects."
As well as carrying out asbestos removal and demolition of the accommodation blocks, J Freeley were responsible for a range of ancillary works including service disconnection, car park construction and fencing. It carried out extensive landscaping amongst the retained trees. It then planted out the cleared area to create a green open space between the accommodation blocks still in use at Castle Irwell. J Freeley also laid footpaths through the area.
Aircraft carrier dismantling…
Able UK sets to work on dismantling of French aircraft carrier.
The arrival of a former French aircraft carrier at the Able UK TERRC (Teesside Environmental Reclamation and Recycling Centre) facility at Able Seaton Port 'marks a significant step forward in establishing Teesside and the North East at the forefront of an industry with tremendous potential for growth—and job creation—in the years ahead.'
That was how Peter Stephenson, Chairman and Chief Executive of Able UK, summed up the significance of the company's success in gaining the contract to recycle the vessel Q790—formerly known as the Clemenceau—in what will be the largest ship recycling project ever undertaken in Europe.
The 32,780 tonne vessel—255 metres long and with a deck width of 51.2 metres was manoeuvred into TERRC after its 1,150 kilometre journey from Brest which commenced last Tuesday. It is now berthed alongside four American and three British vessels that are also undergoing recycling. It is expected that the actual dismantling process will begin this summer and last for around a year, providing 200 jobs.
"This is an important day for our company and the region as a whole. This was seen throughout the world as a highly significant contract and the fact that it has come to our facility demonstrates that we are recognised as a world leader in the field of ship and marine structures recycling," Stephenson says.
"It should be remembered that we have been involved in this activity for many years—indeed currently at TERRC we are involved in the recycling of the North West Hutton platform, – the largest Oil Platform yet to be removed from the North Sea oil fields.
"It is to the credit of the French government that they recognised the importance of ensuring that the Q790 should be recycled at a facility where the work will be undertaken safely and under the best available environmental conditions. I believe their action underlines the growing understanding in the World of the responsibility that ship owners need to ensure that redundant vessels are no longer merely abandoned on the beaches of developing countries. I strongly urge governments and environmental bodies to emulate the French example and to seek to outlaw cheap rate, unregulated and dangerous practices that pose an ongoing threat to both the environment and unprotected workforces.
"With the biggest dry dock in the world, Able Seaton Port is clearly established as world leader with the potential for other major construction projects in the environmental and renewable energy sectors, including wind and wave power technology.
"We have faced many challenges in reaching this point, not least in seeking to combat a campaign that has consistently chosen to ignore the facts and the environmental realities. But our confidence and determination has been fully vindicated today."
"We are proud of what we do and we should be celebrating the fact that here in Hartlepool we have a world leader, employing local people and supporting local businesses. We can now start the process of recruitment and by Easter we should have the full complement of 200 on board involved in the recycling works."
Previous page Page 1 … Page 717 Page 718 Page 719 … Page 752 Next page
Categories Select Category 1 Accident Asbestos Audio Birth of a Demolition Company Book Bridge British Demolition Awards Business Briefing Collusion Comment Competition Contract Award COVID-19 DemoExpo Demolition Club Demolition News Radio Demolition TV Didcot Drone Drugs Entertainment Equipment Fail General Guest Blog Guest Blogs Humour implosion Insolvency Instagram Insurance Jobs Kit Talk Magazine News People Photos Prosecution Publications Red Road The Holy Crap Files Time-Lapse Training Urban Exploration Video
A half century of kindness…
Drone documents stadium demolition…
NDA presses ahead…
Two hurt in Chinese demolition accident…
Framework winners announced…
Demolition News | Chambers Media | Designed By Aaron Lloyd
Demolition News 2021


Celebrate National Pepperoni Pizza day at Papa Murphy's Pizza today! Order ANY Pizza and receive a FREE large Signature Pepperoni Pizza *MUST ORDER ONLINE* and use code FREEPEP at checkout! EXAMPLE: Buy a medium cheese pizza for $8 Buy a large signature pepperoni for $11 total: $19 Use code FREEPEP Pay $8 for TWO pizzas!
BOGO PIZZA from Papa John's – TODAY ONLY!
Don't feel like cooking tonight? You're in luck! Papa John's is offering Buy One Pizza Get One Free when you use promo code PIZZABOGO at checkout. TODAY ONLY!
Don't feel like cooking tonight? Me neither!! Now through the 27th of May, head on over to Dominos.com where you can grab 2 Large 2-Topping Pizzas for only $5.99 each! This offer is valid for online carryout orders only.
Today's Pizza Deal | November 2nd ONLY!


text:
Q: Android: bluetooth listen thread for incomming data only i am working on an android app in which I need to only listen for incoming devices an log the data they are sending using Bluetooth, device sending data is basically a digital Bluetooth enabled thermometer which just sends the data. Problem is i don't know where to start as i m new to android programming. Just a step by step Procedure would be enough to guide me on the right track . i tried Bluetooth chat example but i didn't took me any where also i wasn't able to understand it.
Regards,
Rafiq Ahmed

A: First thing you need is to know how to make the connection with the thermometer. I suppose that, since the device is paired to the smartphone, you only must to manage the connection as a server (On the android-phone). Here you got a summarize:

*

*Change Bluetooth permissions:
http://developer.android.com/guide/topics/connectivity/bluetooth.html#Permissions

*Enable and set up the bluetooth: http://developer.android.com/guide/topics/connectivity/bluetooth.html#SettingUp

*Find the device: http://developer.android.com/guide/topics/connectivity/bluetooth.html#FindingDevices

*Connect with it: http://developer.android.com/guide/topics/connectivity/bluetooth.html#ConnectingAsAServer

*And manage the connection:
http://developer.android.com/guide/topics/connectivity/bluetooth.html#ManagingAConnection
And last thing, I recommend you to pair the device before running the application, at the adjust menu of your mobilephone. Since that, follow the previous steps and all will be fine. If you have some doubt ask me, I had the same troubles about bluetooth connections with arduino and HC-06 bluetooth device
Hope it helps


text:
The Oxford Hayek Society was founded in 1983 by a group of three students:
Hannes Hólmsteinn Gissurarson (now Professor at the University of Iceland);
Chandran Kukathas (now Professor at the London School of Economics); and
Andrew Melnyk (now Professor at the University of Missouri).
They were soon joined by Stephen Macedo (now Professor at Princeton University) and Emilio Pacheco (now President and CEO at Liberty Fund). Dr. John Gray of Jesus College advised the group and provided them "much intellectual stimulus and encouragement".
"This was a society devoted to a sympathetic, but scholarly, discussion of the problems and principles of classical liberalism, as expounded by John Locke, Adam Smith, Alexis de Tocqueville and Lord Acton, and as revived in the latter half of the 20th century by Friedrich A. Hayek, Milton Friedman and Robert Nozick."
Hannes Hólmsteinn Gissurarson
In spring 1985, the five members of the Society had the honour of dining with Hayek in London. It was a memorable event and Hayek was in a good mood. When musicians approached their table to play 'The City of My Dreams', 86-year-old Hayek started singing the text in German.
The Society was renamed the Oxford Libertarian Society from 2008 to 2012. In 2009, its blog was voted by Total Politics readers as the 20th best libertarian blog in the country.
Our former Presidents include Dr. Tom G. Palmer, Senior Fellow of the Cato Institute and Director of Cato University, and Vera Kichanova, the first libertarian ever elected to public office in Russia (in 2012 municipal elections in Moscow).
The Society reverted to its former name in 2012, before briefly returning to its libertarian name between 2018 and 2019.


text:
Echinopsis pampariuzii är en kaktusväxtart som beskrevs av Martín Cárdenas Hermosa. Echinopsis pampariuzii ingår i släktet Echinopsis och familjen kaktusväxter. Inga underarter finns listade i Catalogue of Life.

Källor

Kaktusväxter
pampariuzii


text:
Nigeria Grants Citizenship To Over 300 Foreign Nationals
Nigeria has granted her citizenship to more than 300 foreign nationals, the Federal Government said on Wednesday.
This was even as Ministry of Water of Resources stated that it inherited 117 abandoned projects from the government of former President Goodluck Jonathan which it said stood at N89 billion.
Briefing State House correspondents at the end of Wednesday meeting of the Federal Executive Council, FEC presided over by President Muhammadu Buhari at the presidential Villa, Abuja, the Minister of Interior, Abdulraman Danbazzua joined by his Water Resources counter-part, Suleiman Adamu and the Special Adviser to the President on Media and Publicity, Mr. Femi Adesina stated that a total of 500 persons applied for Nigerian citizens but about 100 were disqualified.


chinese lantern from the garden . . .
On Monday, five or so days ago, I arrived home around 8:30 a.m., having taken the red-eye flight from Los Angeles to Boston. I was tired. The connecting flight gate at LAX was moved a terminal away and I only got there by asking for someone to push me there in a wheelchair. For the next few nights, I didn't sleep very well. I had vivid dreams. I woke up at 4 a.m. and couldn't go back to sleep. Then, I slept until 9:30 after I finally fell back asleep.
Besides having irregular sleep patterns, I set forth to buy food, make broth and clean up the kitchen in anticipation of a new countertop being installed in the next month or so. Instead of having two knife blocks taking up so much room on the counter, I ordered a twenty-four inch magnetic knife strip to hold all the knives that we use. Once G. mounted it on the bottom strip of the octagonal window, we marveled at how efficient and useful it was, noting how we could have done this so long ago! I also ordered a twelve-dollar knife blade sharpener that arrived yesterday. As the reviewers said, it held firmly to the countertop, allowing for one's non-sharpening hand to rest far away from it, and then to allow knives to be drawn towards me through a "dimond sharpening opening." It worked so well that my knives are now razor sharp and slice through newspaper, just like on TV!
But I'm not really writing about knife-sharpening in this post, I'm writing about how much I appreciate being home. I'm not a world traveler much anymore, although I've done my share while working in the biotech industry, flying to Frankfurt and holding powwows in the airport restaurant with our business partners, then flying home two days later without having left the airport. Once, the American Airlines staff were so surprised to see me returning from Frankfurt on their own layover flight that they moved me to first class, gave me roses and the largest tin of caviar that I have ever seen! It was a memorable trip, also because it took place right before Christmas and there were stalls of German Christmas ornaments and gifts for sale set up in the airport. I had a great time, bought a couple of hand-blown glass ornaments and drank champagne and ate caviar all the way back home. Those were the days when business class was common, unlike today when people are fighting with each other in economy class about moving their seats back!
Now, I'm discovering once again how much I love being home with my husband, G. in our quirky home on the top floor of a Queen Anne Victorian house with his piano shop on the ground floor. Before my trip, we did a big refrigerator clean-out together and it really helped to come home to a half empty, clean fridge. I bought some food, shopping at a Mediterranean grocery store for their heavenly homemade baba ganoush (eggplant dip,) and brought home a sack of small Japanese light-fleshed sweet potatoes from the Vietnamese market–half the cost from the gourmet farm stand a half an hour away–and sharing them with neighbors who love them as much as we do.
Today, I went by the other Vietnamese grocery in town which offers whole roast duckling transported from Chinatown in Boston on Saturday mornings but only if you come at the right time–after they have arrived and before they are sold out–an unpredictable window of time on both ends. I also found a pack of roasted pork buns with a red dot on them and two bunches of scallions for the Peking Duck we'll have with hoisin sauce and flour wrappers I'll make tonight. I also picked up raw chicken and pork bones to make a "Tampopo" type broth with ginger root and green onions (plus a spoonful of apple cider vinegar.) When the broth is ready, I'll strain it and use part of it to make a soup with tofu, mushrooms and fresh watercress added at the last minute so it's still crunchy when served.
"tampopo" broth with chicken and pork bones . . .
I'm glad to be home but don't get me wrong, it was a great trip in many ways. Being with my daughter, M. who lives in Minneapolis was a treat. She went out of her way to take care of so many things, not the least of which was to drive our rental car towards Pike Place in Seattle (although we didn't realize it at the time) during rush hour on a Friday afternoon.
The cottage views were delightful and peaceably enjoyed. We finally found Dungeness crab at the local grocery store and lightly steamed it, eating large chunks of crabmeat dipped in warm, melted Kerrygold butter (from Irish grass-fed cows.) Most of all I got to witness and to deeply appreciate my daughter's silent ways that made the trip so meaningful. Many thanks, M.!
Making a home means a lot to me. Keeping it up for our needs and enjoyment is one of my great pleasures. I just happen to like doing it, even the tedious cleaning up of things. It looks and feels so much better afterwards. There are still closets to clean out and plenty of cupboards to reorganize before the kitchen gets its facelift in a couple of weeks. I guess I'll never run out of things to do at this rate, will I?
I'm glad to be home with G.
Glad you like the knife rack! It's form-i-da-ble (French word) with my best knives set out along its length. G. is carving a roast duck for wrappers and hoisin sauce with scallions. Watching "Ingredients" DVD with Bebe Neuwirth after dinner tonight!


Akwaboah faces a heavy threat which might be extra hard to handle. It is rumored that he has had no peace since his fans drew his attention to a rival.
Undisputedly, Akwaboah Jnr. has served so well and gained an enviable name when it comes to music in Ghana. A soothing voice which he has to brag of and multiples of good music he has written and produced.
For some time now, a new face seem to be stealing Akwaboah's thunder at a carefully calculated rate. He sounds nothing like him. He has his own unique voice and style but you may choose listening to him over Akwaboah. This "new guy" is Abochi. Initiated into the Music scene by Okyeame Kwame with his "Hallelujah" song. It made waves but Abochi wasn't successful at stealing the limelight. His face is familiar in the industry but the masses have not yet realized the talent he is.
I have listened to couple of his songs like, "I wanna Know", "Trotro", "Bestie" and his up-to-the-minute song, "Prison Break". Now, talking about "Prison Break", Abochi, expresses how people enjoy break ups nowadays. I think a lot of people relate to this very song, especially those who just left a toxic relationship.
Enjoy this beautiful song below and leave your verdict.


When a swarm of chinchilla babies is seen floating through the air, the first thought is always to run. But few know, that running full speed toward them will form a magnetic field around yourself, lifting you from the ground to reveal these links.
Takanori Aiba – Takanori is a designer and illustrator creating complex three dimensional artwork that combines his passion for mazes, architecture and bonsai.
Erik Johansson – The surreal and sometimes stunning photo work of Erik Johansson. Thanks Danny Tas and daughter!
Relationship hack – Here's a great concept to strengthen relationship and divvy up those tasks via Lifehacker. Work off the same to-do list. I'd add getting a sticker or something for the one who was done first.
1Password – A nice tool from Agilebits that helps you handle all of those passwords.
How to shoot great video of zoo animals – Who woulda thought all you need is a 'crappy' camera phone and a mirror. Time to go to the zoo.
Hipmunk – A wonderful new way to search for flights.
Inception Park – Another nice day in Buenos Aires and plenty of floating coasters to ride between the buildings and amongst the foliage.


The 7-story Capital Airport Hotel (Beijing Shoudu Jichang Binguan) is located on the airport highway about 1 kilometer from the Terminal 2 building and about 25 kilometers from central Beijing. Nearby points of interest include International Terminal 3, Shunyi village, Xinguozhan and the new International Convention and Exhibition Center. Renovated in 2004, the hotel features 210 guestrooms and suites, equipped with high speed broadband internet, cable televisions, mini-bars, direct-dial telephones, climate control and in-room safes. Bathrooms include hair dryers and toiletries. Non-smoking and handicapped accessible rooms are available. The hotel property includes a swimming pool, exercise facility, sauna and massage center, restaurant serving western and Asian food, a coffee shop, concierge service, ticket desk, currency exchange, dry cleaning and laundry service, beauty salon and child care. Conference facilities include a ballroom, meeting rooms and business center.
- 5 km to New International Exhibition Center; - 10-min-drive to Capital International Airport; - 25 km to Beijing Railway Station.
Beauty salon, massage, sauna, karaoke.


In conjunction with Northampton's Art's Night Out, on Friday December 13th , UNITE will host a gallery reception for local artist, Ryan Leary from 6-9 pm. Refreshments will be served, and Ryan's work will be on display and for sale until January 7th.
Graduate of Holyoke Community College and Westfield State University with a Bachelor of Fine Arts. His focus remained primarily in drawing and painting techniques. He believes that it was his experience with clay and pottery that had the greatest impact on his sense and understanding of form and rhythm. This is the first time that Ryan has found success with a full, concise body of work, and he is beyond excited for the chance to put it on display. Here, he will feature a series of chalk & charcoal portraiture of past and present professional wrestlers.
Ryan was initially exposed to the squared circle by his father, Paul at a very early age. While his interest waned for some years, he was back on board by the Attitude Era. He again lost track, but for many years now, has been back on board, and finds himself at the height of his fandom. Perhaps it's the larger than life characters, or just a greater understanding and appreciation of what makes the wrestler (as well as the company he works for). Or maybe it was just the right combination of CM Punk's famous Pipe Bomb, Brandon Stroud's relentless analysis, and his best friend Winston for the motivation the attend nearly a day's worth of live events in the last year.
For more information, please visit unitefootwear.com. Don't miss the opportunity to experience Art's Night Out and support local artists!
RSVP for Arts Night Out December: RAW IS LEARY to add comments!