jtowarek's picture
Upload folder using huggingface_hub
ed4bdac verified
"""Numeric constants for slide generation layout and Wisent brand colors."""
# Wisent brand palette from wisent-visuals (RGB tuples 0-255)
ACCENT_R = 197
ACCENT_G = 255
ACCENT_B = 200
RED_R = 250
RED_G = 90
RED_B = 70
PURPLE_R = 177
PURPLE_G = 158
PURPLE_B = 204
DARK_R = 18
DARK_G = 18
DARK_B = 18
GRID_R = 45
GRID_G = 49
GRID_B = 48
LEGEND_R = 118
LEGEND_G = 153
LEGEND_B = 120
WHITE_VAL = 255
BLACK_VAL = 0
# Font sizes in points
PT_TITLE = 36
PT_SUBTITLE = 20
PT_BODY = 16
PT_SMALL = 12
PT_STAT = 48
PT_LABEL = 14
PT_TEAM = 28
# Slide dimensions in inches (for widescreen 16:9)
SLIDE_W_INCHES = 10
SLIDE_H_NUMER = 45
SLIDE_H_DENOM = 8
# Position helpers in inches
POS_HALF = 0.5
POS_ONE = 1.0
POS_ONE_HALF = 1.5
POS_TWO = 2.0
POS_TWO_HALF = 2.5
POS_THREE = 3.0
POS_THREE_HALF = 3.5
POS_FOUR = 4.0
POS_FOUR_HALF = 4.5
POS_FIVE = 5.0
POS_SIX = 6.0
POS_SEVEN = 7.0
POS_EIGHT = 8.0
POS_NINE = 9.0
# Image dimensions
IMG_FIG_W = 7.0
IMG_FIG_H = 3.5
IMG_KANT_W = 3.0
IMG_KANT_H = 4.0
# Column layout
COL_LEFT_X = 0.5
COL_RIGHT_X = 5.0
COL_W = 4.5
COL_H = 4.0
# Stat column positions
STAT_COL_ONE_X = 0.5
STAT_COL_TWO_X = 3.5
STAT_COL_THREE_X = 6.5
STAT_COL_W = 3.0
# Title position
TITLE_X = 0.5
TITLE_Y = 0.3
TITLE_W = 9.0
TITLE_H = 1.0
# Centered text position
CENTER_Y = 1.5
CENTER_W = 8.0
CENTER_H = 3.5
CENTER_X = 1.0
# Footer position
FOOTER_Y = 4.8
FOOTER_H = 0.5
# Team layout
TEAM_NAME_Y = 2.5
TEAM_NAME_H = 1.0
TEAM_COL_ONE_X = 1.0
TEAM_COL_TWO_X = 5.5
TEAM_COL_W = 3.5
# Prisoner's Dilemma payoff constants (T > R > P > S)
PD_TEMPTATION = 5
PD_REWARD = 3
PD_PUNISHMENT = 1
PD_SUCKER = 0
# Payoff display strings for PD slide table cells
PD_CC = f"({PD_REWARD}, {PD_REWARD})"
PD_CD = f"({PD_SUCKER}, {PD_TEMPTATION})"
PD_DC = f"({PD_TEMPTATION}, {PD_SUCKER})"
PD_DD = f"({PD_PUNISHMENT}, {PD_PUNISHMENT})"
PD_NE_LABEL = f"Nash Equilibrium: (Defect, Defect) with payoff ({PD_PUNISHMENT}, {PD_PUNISHMENT})"
PD_PO_LABEL = f"Pareto Optimum: (Cooperate, Cooperate) with payoff ({PD_REWARD}, {PD_REWARD})"
# Player labels for payoff matrix slides
PLAYER_ROW_LABEL = "Player " + str(PD_PUNISHMENT)
PLAYER_COL_LABEL = "Player " + str(PD_PUNISHMENT + PD_PUNISHMENT)
# PD alignment explanation (no inline digits)
PD_EXPLANATION_BODY = (
"The tension between individual rationality and collective welfare "
"is the core alignment challenge. An aligned agent should learn to "
"cooperate with cooperative partners while resisting exploitation."
)
# Font name for slide text
FONT_NAME = "Hubot Sans"
# EMU (English Metric Units) per inch for Google Slides API
EMU_PER_INCH = 914400
# Google Slides file ID for the Kant presentation
GSLIDES_FILE_ID = "1sXyiZMKYbTwp6CK6VbSBF9ZvzUHweHvmpxfb34yVZQs"
# Revision restore offset (how many revisions back to go)
REVISION_RESTORE_OFFSET = 2