anchor.diff:  /obj/item/device/radio/headset/headset_sec/alt/department/sci
   	keyslot = new /obj/item/device/encryptionkey/headset_sec
   	keyslot2 = new /obj/item/device/encryptionkey/headset_sci
  ->>>>>>> f14c719... Tiny batch of Initialize() fixes, mostly stuff that isn't around at roundstart (#30980)
  
positive.code: //Warden and regular officers add this result to their get_access()
  /datum/job/proc/check_config_for_sec_maint()
  	if(config.jobs_have_maint_access & SECURITY_HAS_MAINT_ACCESS)
  		return list(ACCESS_MAINT_TUNNELS)
  	return list()
  
  /*
  Head of Security
  */
  /datum/job/hos
  	title = "Head of Security"
  	flag = HOS
  	department_head = list("Captain")
  	department_flag = ENGSEC
  	head_announce = list("Security")
  	faction = "Station"
  	total_positions = 1
  	spawn_positions = 1
  	supervisors = "the captain"
  	selection_color = "#ffdddd"
  	req_admin_notify = 1
  	minimal_player_age = 14
  	exp_requirements = 300
  	exp_type = EXP_TYPE_CREW
  	exp_type_department = EXP_TYPE_SECURITY
  
  	outfit = /datum/outfit/job/hos
  
  	access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS,
  			            ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_ALL_PERSONAL_LOCKERS,
  			            ACCESS_RESEARCH, ACCESS_ENGINE, ACCESS_MINING, ACCESS_MEDICAL, ACCESS_CONSTRUCTION, ACCESS_MAILSORTING,
  
negative.code: 			            ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_ALL_PERSONAL_LOCKERS,
  			            ACCESS_RESEARCH, ACCESS_ENGINE, ACCESS_MINING, ACCESS_MEDICAL, ACCESS_CONSTRUCTION, ACCESS_MAILSORTING,
  			            ACCESS_HEADS, ACCESS_HOS, ACCESS_RC_ANNOUNCE, ACCESS_KEYCARD_AUTH, ACCESS_GATEWAY, ACCESS_MAINT_TUNNELS)
  
  /datum/outfit/job/hos
  	name = "Head of Security"
  	jobtype = /datum/job/hos
  
  	id = /obj/item/card/id/silver
  	belt = /obj/item/device/pda/heads/hos
  	ears = /obj/item/device/radio/headset/heads/hos/alt
  	uniform = /obj/item/clothing/under/rank/head_of_security
  	shoes = /obj/item/clothing/shoes/jackboots
  	suit = /obj/item/clothing/suit/armor/hos/trenchcoat
  	gloves = /obj/item/clothing/gloves/color/black/hos
  	head = /obj/item/clothing/head/HoS/beret
  	glasses = /obj/item/clothing/glasses/hud/security/sunglasses
  	suit_store = /obj/item/gun/energy/e_gun
  	r_pocket = /obj/item/device/assembly/flash/handheld
  	l_pocket = /obj/item/restraints/handcuffs
  	backpack_contents = list(/obj/item/melee/baton/loaded=1)
  
  	backpack = /obj/item/storage/backpack/security
  	satchel = /obj/item/storage/backpack/satchel/sec
  	duffelbag = /obj/item/storage/backpack/duffelbag/sec
  	box = /obj/item/storage/box/security
  
  	implants = list(/obj/item/implant/mindshield)
  
  /*
  Warden
  */
  /datum/job/warden
  	title = "Warden"
  	flag = WARDEN
  	department_head = list("Head of Security")
  	department_flag = ENGSEC
  	faction = "Station"
  	total_positions = 1
  	spawn_positions = 1
  	supervisors = "the head of security"
  	selection_color = "#ffeeee"
  	minimal_player_age = 7
  	exp_requirements = 300
  	exp_type = EXP_TYPE_CREW
  
  	outfit = /datum/outfit/job/warden
  
  	access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_FORENSICS_LOCKERS)
  	minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_ARMORY, ACCESS_COURT, ACCESS_WEAPONS) //SEE /DATUM/JOB/WARDEN/GET_ACCESS()
  
  /datum/job/warden/get_access()
  	var/list/L = list()
  	L = ..() | check_config_for_sec_maint()
  	return L
  
  /datum/outfit/job/warden
  	name = "Warden"
  	jobtype = /datum/job/warden
  
  	belt = /obj/item/device/pda/warden
  	ears = /obj/item/device/radio/headset/headset_sec/alt
  	uniform = /obj/item/clothing/under/rank/warden
  	shoes = /obj/item/clothing/shoes/jackboots
  	suit = /obj/item/clothing/suit/armor/vest/warden/alt
  	gloves = /obj/item/clothing/gloves/color/black
  	head = /obj/item/clothing/head/warden
  	glasses = /obj/item/clothing/glasses/hud/security/sunglasses
  	r_pocket = /obj/item/device/assembly/flash/handheld
  	l_pocket = /obj/item/restraints/handcuffs
  	suit_store = /obj/item/gun/energy/e_gun/advtaser
  	backpack_contents = list(/obj/item/melee/baton/loaded=1)
  
  	backpack = /obj/item/storage/backpack/security
  	satchel = /obj/item/storage/backpack/satchel/sec
  	duffelbag = /obj/item/storage/backpack/duffelbag/sec
  	box = /obj/item/storage/box/security
  
  	implants = list(/obj/item/implant/mindshield)
  
  
  /*
  Detective
  */
  /datum/job/detective
  	title = "Detective"
  	flag = DETECTIVE
  	department_head = list("Head of Security")
  	department_flag = ENGSEC
  	faction = "Station"
  	total_positions = 1
  	spawn_positions = 1
  	supervisors = "the head of security"
  	selection_color = "#ffeeee"
  	minimal_player_age = 7
  	exp_requirements = 300
  	exp_type = EXP_TYPE_CREW
  
  	outfit = /datum/outfit/job/detective
  
  	access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS)
  	minimal_access = list(ACCESS_SEC_DOORS, ACCESS_FORENSICS_LOCKERS, ACCESS_MORGUE, ACCESS_MAINT_TUNNELS, ACCESS_COURT, ACCESS_BRIG, ACCESS_WEAPONS)
  
  /datum/outfit/job/detective
  	name = "Detective"
  	jobtype = /datum/job/detective
  
  	belt = /obj/item/device/pda/detective
  	ears = /obj/item/device/radio/headset/headset_sec/alt
  	uniform = /obj/item/clothing/under/rank/det
  	shoes = /obj/item/clothing/shoes/sneakers/brown
  	suit = /obj/item/clothing/suit/det_suit
  	gloves = /obj/item/clothing/gloves/color/black
  	head = /obj/item/clothing/head/fedora/det_hat
  	l_pocket = /obj/item/toy/crayon/white
  	r_pocket = /obj/item/lighter
  	backpack_contents = list(/obj/item/storage/box/evidence=1,\
  		/obj/item/device/detective_scanner=1,\
  		/obj/item/melee/classic_baton=1)
  	mask = /obj/item/clothing/mask/cigarette
  
  	implants = list(/obj/item/implant/mindshield)
  
  /datum/outfit/job/detective/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
  	..()
  	var/obj/item/clothing/mask/cigarette/cig = H.wear_mask
  	cig.light("")
  
  	if(visualsOnly)
  		return
  
  /*
  Security Officer
  */
  /datum/job/officer
  	title = "Security Officer"
  	flag = OFFICER
  	department_head = list("Head of Security")
  	department_flag = ENGSEC
  	faction = "Station"
  	total_positions = 5 //Handled in /datum/controller/occupations/proc/setup_officer_positions()
  	spawn_positions = 5 //Handled in /datum/controller/occupations/proc/setup_officer_positions()
  	supervisors = "the head of security, and the head of your assigned department (if applicable)"
  	selection_color = "#ffeeee"
  	minimal_player_age = 7
  	exp_requirements = 300
  	exp_type = EXP_TYPE_CREW
  
  	outfit = /datum/outfit/job/security
  
  	access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_MAINT_TUNNELS, ACCESS_MORGUE, ACCESS_WEAPONS, ACCESS_FORENSICS_LOCKERS)
  	minimal_access = list(ACCESS_SECURITY, ACCESS_SEC_DOORS, ACCESS_BRIG, ACCESS_COURT, ACCESS_WEAPONS) //BUT SEE /DATUM/JOB/WARDEN/GET_ACCESS()
  
  
  /datum/job/officer/get_access()
  	var/list/L = list()
  	L |= ..() | check_config_for_sec_maint()
  	return L
  
  GLOBAL_LIST_INIT(available_depts, list(SEC_DEPT_ENGINEERING, SEC_DEPT_MEDICAL, SEC_DEPT_SCIENCE, SEC_DEPT_SUPPLY))
  
  /datum/job/officer/after_spawn(mob/living/carbon/human/H, mob/M)
  	// Assign department security
  	var/department
  	if(M && M.client && M.client.prefs)
  		department = M.client.prefs.prefered_security_department
  		if(!LAZYLEN(GLOB.available_depts) || department == "None")
  			return
  		else if(department in GLOB.available_depts)
  			LAZYREMOVE(GLOB.available_depts, department)
  		else
  			department = pick_n_take(GLOB.available_depts)
  	var/ears = null
  	var/accessory = null
  	var/list/dep_access = null
  	var/destination = null
  	var/spawn_point = null
  	switch(department)
  		if(SEC_DEPT_SUPPLY)
  			ears = /obj/item/device/radio/headset/headset_sec/alt/department/supply
  			dep_access = list(ACCESS_MAILSORTING, ACCESS_MINING, ACCESS_MINING_STATION)
  			destination = /area/security/checkpoint/supply
  			spawn_point = locate(/obj/effect/landmark/start/depsec/supply) in GLOB.department_security_spawns
  			accessory = /obj/item/clothing/accessory/armband/cargo
  		if(SEC_DEPT_ENGINEERING)
  			ears = /obj/item/device/radio/headset/headset_sec/alt/department/engi
  			dep_access = list(ACCESS_CONSTRUCTION, ACCESS_ENGINE)
  			destination = /area/security/checkpoint/engineering
  			spawn_point = locate(/obj/effect/landmark/start/depsec/engineering) in GLOB.department_security_spawns
  			accessory = /obj/item/clothing/accessory/armband/engine
  		if(SEC_DEPT_MEDICAL)
  			ears = /obj/item/device/radio/headset/headset_sec/alt/department/med
  			dep_access = list(ACCESS_MEDICAL)
  			destination = /area/security/checkpoint/medical
  			spawn_point = locate(/obj/effect/landmark/start/depsec/medical) in GLOB.department_security_spawns
  			accessory =  /obj/item/clothing/accessory/armband/medblue
  		if(SEC_DEPT_SCIENCE)
  			ears = /obj/item/device/radio/headset/headset_sec/alt/department/sci
  			dep_access = list(ACCESS_RESEARCH)
  			destination = /area/security/checkpoint/science
  			spawn_point = locate(/obj/effect/landmark/start/depsec/science) in GLOB.department_security_spawns
  			accessory = /obj/item/clothing/accessory/armband/science
  