EQXX5KDJMDEDXPJ7QQWDXHEFFE4K4UWEZ5ZCJNOPK57D26SB7H6AC
IMNQIL6XQZ2H6Y4IHZTQPSR4D6DMRXKW7ZZIVP2LWF32OWQSDMDQC
GNLPUKVZDVBMFVGOB3CLZPGPZZKSDJP3PWLSVSPLU2YDO4ZC4VKAC
EZSXX7RS2DEMNZWU6SA4FNLSYR5MNEEJEQ4GSHJ7SYMXQM7UZVHAC
LELKY6NPY7VWL4Y37R3F7GEM22YU2KI66DMC3QLGBXYWF3GMZS4AC
RUPKCDDFWKIVFSSAXYEIW3WKSEQD422O4RXEJZWWE6FGB2IB7GSAC
B6APD6LRE4UWIIZNSB5AIUCFY4GTG73LSCDOGNBLZCZMGSJCB5BQC
ZTBFSKO73OZIVCXJWFQ2B6GKEBEBCHPADX432HTSO3XR3P3J4ZSAC
3PFAURPOSKAALTFGPRXLFHXLGSW5MCY64U726KKXHMMC243W5MDQC
SIEIDGRJ2BNXELQQ4QJ5FXN6VU5MP565AN7S57GBFQICLETJRMQQC
I4J2NZJXY644RCHEMPLTWC7PBY53BQAWBUJQXTRBUXPLLRI4R3IQC
M6GJ5MQ7PKVD5SKOL3VMTZAEGONBDDRQIXW3LGTJAVCQX77ADRCQC
2QF7HCG5CLNOBSZUKSHRI2MR4FHHXWY22ZP7JMWD52ZSO2LO2DLAC
KFLC4I2NGCBQBKP52BGLJWATUBZTXA3NAFD4R4T7V3VBPRWCY7AQC
JGMCSDW663DQSK7XSWDBPVYQE57ZBP7ZVZLSEXUJOQVE7KY6BB4QC
:PROPERTIES:
:ID: a151d21a-b016-4de8-a269-29673c636355
:END:
#+title: Protéinurie
#+filetags: biochimie
Diagonstic + surveillance IRC, risque cardiovasculaire
Microalbuminurie : 30-300 sur 24h (mg/j) ou rapport albumine/créatinine 30-300/mg/
Protéinurie > 300mg/j sur 24h ou > 300mg/g pour le rapport
Microabl = faible quantité l'ablumine dans les urine -> atteinte endothéolique
Facteur de risque de néphropathie diabétique + surmortalité cardiovasculaire chez les diabétique
:PROPERTIES:
:ID: f9caff5e-5572-4e86-81e2-c7897fdd9248
:END:
#+title: Débit de filtration glomérulaire (DFG)
#+filetags: biochimie
Inconvénient : valable seulement si fonction rénale stable
fastidieux (recueil sur 24h)
La clairance de la créatine > DFG (car créatine sécrétée par les tubules rénaux)
Formules :
- cockroft et gault
- MDRD
- CKD/Epi : plus précise que MDRD pour DFG not. si clairance > 60
:PROPERTIES:
:ID: dd35f673-81f0-4d95-b4b2-99ca2090689f
:END:
#+title: Fructosamine
#+filetags: biochimie
Pré-analytique: sérum/plasma EDTA/héparine
Interférence : ictère, hémolyse, turbidité
Physiopath: reflète protéine plasmatiques glyquée. Fructorasime = glycémie moyenne 2-3 semaine avant prélèvement
Indication:
- surveillance court terme du diabète
- anémie, hémoglobinopathie
- *IR stade terminal*, *Grossesse*
Peu utilisé en tournie (HbA1c suffit)
:PROPERTIES:
:ID: 1ab5aa3c-f88a-45f9-a551-2507fc6642ff
:END:
#+title: Anomalie lipidique
#+filetags: biochimie endocrino
Exploration: après 12h de jeune
1ere intention
- cholestérole totale, triglycérides, HDL-c
- LDL-c : dosage direct si TG > 0.4gL ou diabète ou maladie vasculaire connue. Sinon la formule de Friedewald
#+begin_src latex
cholestérol total - HDLc - TG/5 (pour un résultat en g/L)
#+end_src
NB: estime le cholestérol lié au VLDL mais incorrect si hypertriglycéridémie
Confirmaton par 2e dosage si anormal
Si HDL < 0.35g/L ou > 0.8g/L contrôle possible de l'apoA1 par le biologiste
Définition:
- glycémie à jeun normale < 1.1g/L (6.06mmol/L)
- hyperglycémie modélure à jeun entre 1.1 et 1.26 g/L (inclus) soit 6.93mmol/L)
- si 2H après 75g de gulose >= 2g/L (11mmol/L) -> diabète
- diabète : >= 1.26g/L à 2 reprise *ou* >= 2g/L
*Seule la glycémie veineuse au labo donne le diag*
* Préanalytique
* Diagnostic
** Préanalytique
* Prédisposition génétique
- type 1: CMH2 = facteur de risque, facteurs de prédisposition (haplotype DR3, DR4) ou prodection (DR15)
- autres : VNTR (insuline), CTLA-4 (immunomodulation LT), PTP-N22
- type 2 : nb gènes mais utilité incertaines
** Définition:
- glycémie à jeun normale < 1.1g/L (6.06mmol/L)
- hyperglycémie modélure à jeun entre 1.1 et 1.26 g/L (inclus) soit 6.93mmol/L)
- si 2H après 75g de gulose >= 2g/L (11mmol/L) -> diabète
- diabète : >= 1.26g/L à 2 reprise *ou* >= 2g/L
*Seule la glycémie veineuse au labo donne le diag*
* Complications
Exploration des complications micro-vasculaires
- rétinopathie: rénitographie/fond d'oeil
- néphropathie : BU + albuminurie, créatininémie, DFG
- neuropathie : ROT, test monofilament (anormal = 50% de risque de trouble dans l'année, normal n'écarte pas ...)
Et macrovasculaire : AVC maladie coronarienne donc
- pression artérielle, ECG, [[id:1ab5aa3c-f88a-45f9-a551-2507fc6642ff][Anomalie lipidique]]
- doppelr MI et TSA, IPS (pression systolique cheville/brachial -> anormal si < 0.9)
[[id:dd35f673-81f0-4d95-b4b2-99ca2090689f][Fructosamine]] : peu utilisé
[[id:97cfbabe-78e8-49e8-8b00-01e47a6f2da9][Créatinine]]
[[id:f9caff5e-5572-4e86-81e2-c7897fdd9248][Débit de filtration glomérulaire (DFG)]]
[[id:a151d21a-b016-4de8-a269-29673c636355][Protéinurie]]
** IR
À cherche une fois par an :
- BU (protéuinurie, hématire, leucocyturie)
- créatininémie + estimation DFG
- albuminurie (rapport albu/créat)
Attente rénale si protéinurie/albumuniraire ou DFG < 60 pendant > 3
Attention, le DFG doit diminuer de 50% avant que la concentration de créatinine plasmatique > normale !
:PROPERTIES:
:CUSTOM_ID: retry-biscuit-de-savoie
:END:
[[https://www.meilleurduchef.com/cgi/mdc/l/fr/recette/biscuit-savoie.html][meilleur
du chef]]) : cuire vraiment plus longtemps en bas du four. Bien beurrer
[[https://www.meilleurduchef.com/cgi/mdc/l/fr/recette/biscuit-savoie.html][meilleur du chef]] : cuire vraiment plus longtemps en bas du four. Bien beurrer
{-# LANGUAGE TemplateHaskell #-}
{-# LANGUAGE QuasiQuotes #-}
{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE FlexibleInstances #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE DerivingStrategies #-}
{-# LANGUAGE StandaloneDeriving #-}
{-# LANGUAGE UndecidableInstances #-}
{-# LANGUAGE DataKinds #-}
import qualified Database.Persist.TH as PTH
import Database.Persist (Entity(..))
import Database.Persist.Sql (toSqlKey)
import qualified Data.Text as T
import Database.Persist.Sqlite
import Control.Monad.IO.Class
import Control.Monad.Logger
import Text.Pandoc.JSON
import System.FilePath (addExtension, dropExtension, makeRelative)
import System.Directory (getCurrentDirectory)
PTH.share [PTH.mkPersist PTH.sqlSettings, PTH.mkMigrate "migrateAll"] [PTH.persistLowerCase|
Node sql=nodes
Id T.Text sql=id
file T.Text
title T.Text
deriving Show
|]
path = "/home/alex/.emacs.d/.local/cache/org-roam.db"
unescape :: T.Text -> T.Text
unescape = T.replace "\"" ""
-- From "id:XXXX" search in org-roam database for path to file
-- If there is no id, just return the string unchanged
pathFromID :: T.Text -> IO (T.Text)
pathFromID id = runSqlite path $ do
-- Get id and add (escaped) quote
let s = T.concat ["\"", last (T.splitOn "id:" id), "\""]
test <- get (NodeKey s)
let res = case test of
Just x -> unescape . nodeFile $ x
Nothing -> id
return res
-- Change link to HTML version for publishing it
-- Link is transformed from absolute to relative
htmlLink :: FilePath -> FilePath -> FilePath
htmlLink f pwd = makeRelative pwd (addExtension (dropExtension f) ".html")
-- Replace org-mode internal link to link to the full path of the file
replaceLink :: Inline -> IO (Inline)
replaceLink (Link attr xs t) = do
p <- pathFromID (fst t)
pwd <- getCurrentDirectory
let p' = htmlLink (T.unpack p) pwd
return $ Link attr xs (T.pack p', snd t)
replaceLink x = return x
main :: IO ()
main = toJSONFilter replaceLink
import Development.Shake
import Development.Shake.Command
import Development.Shake.FilePath
import Development.Shake.Util
siteExe :: String
siteExe = "_build/hakyll-site"
-- This only works in Gentoo with packages installed globally
-- TODO: add a switch to use cabal (cabal build and cabal run) outside gentoo
-- Note: nix-build fails with some encoding issues (hGetConts).
-- Nix flakes builds several GHC version...
main :: IO ()
main = shakeArgs shakeOptions{shakeFiles="_build"} $ do
want ["_build/notes/index.html"]
"_build/notes/index.html" %> \out -> do
let src = "notes/index.org"
org <- getDirectoryFiles "" ["notes/medecine/*.org"]
let html = ["_build" </> n -<.> "html" | n <- org]
need html
cmd "pandoc" src "--filter ./filterOrgRoam -o" [out]
"_build/notes/medecine/*.html" %> \out -> do
let org = dropDirectory1 $ out -<.> "org"
putInfo org
putInfo out
cmd "pandoc" [org] "--filter ./filterOrgRoam -o" [out]
-- want ["build", "hut"]
-- siteExe %> \out -> do
-- let src = "src/Main.hs"
-- need [src, "notes/20230511180745-microbiologie.org"]
-- cmd_ "ghc --make -o" [out] [src]
-- -- Shake cannot use directories
-- phony "build" $ do
-- need [siteExe]
-- cmd_ siteExe "build"
phony "clean" $ do
-- putInfo "Cleaning site "
-- cmd_ siteExe "clean"
putInfo "Cleaning files in _build"
removeFilesAfter "_build" ["//*"]
-- phony "hut" $ do
-- putInfo "Upload to blog hosted by sourcehut"
-- need ["archive"]
-- cmd_ "hut pages publish _build/site.tar.gz -d scut.srht.site"
-- phony "archive" $ do
-- need ["build"]
-- cmd_ "tar cvzf " ["_build/site.tar.gz"] "-C _site ."
-- -- z option is important to avoid re-uploading everything
-- phony "free" $ do
-- putInfo "Upload to blog hosted by Free"
-- cmd_ "ncftpput -z -f login.cfg -R . _site/*"
-- cmd_ "ncftpput -z -f login.cfg -R . files/*"
-- phony "watch" $ do
-- putInfo "Generate site locally"
-- cmd_ "_build/hakyll-site watch"