<commit_before><?xml version="1.0"?>
<!-- Definition file for KASPAR Holds all information for a single Kaspar 
	instance, like servo specific information (limits and defaults) and information 
	that KasparGUI uses to display and format information for this Kaspar type -->
<ROBOT type="KASPAR" version="3" name="Kaspar Prototype A"
	defaultAction="Neutral">
	<SERVOCONFIGS>
		<VIRTUAL>
			<DEFAULT>
				<POS>0</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>False</MANUAL_POSITIONING>
				<IS_UPDATED>False</IS_UPDATED>
			</DEFAULT>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>200</MAX>
				</SPEED>
				<POS>
					<MIN>-180</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</VIRTUAL>
		<!-- Connection Settings -->
		<HERKULEX>
			<PORT>/dev/bodyServos</PORT>
			<SPEED>115200</SPEED>
			<DEFAULT>
				<POS>0</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>True</MANUAL_POSITIONING>
				<IS_UPDATED>True</IS_UPDATED>
			</DEFAULT>
			<SCALING>
				<!-- 360 / 1023 -->
				<POS>0.352</POS>
				<POS_OFFSET>512</POS_OFFSET>
				<SPEED>0.098</SPEED>
			</SCALING>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>200</MAX>
				</SPEED>
				<POS>
					<MIN>-180</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</HERKULEX>

		<HS82MG>
			<PORT>/dev/headServos</PORT>
			<SPEED>115200</SPEED>
			<DEFAULT>
				<POS>90</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>False</MANUAL_POSITIONING>
				<IS_UPDATED>True</IS_UPDATED>
			</DEFAULT>
			<SCALING>
				<!-- 360 / 2000 -->
				<POS>0.18</POS>
				<POS_OFFSET>1000</POS_OFFSET>
				<SPEED>0.1</SPEED>
			</SCALING>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>500</MAX>
				</SPEED>
				<POS>
					<MIN>0</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</HS82MG>
	</SERVOCONFIGS>

	<SENSORCONFIGS>
		<ROBOT>
			<FSR_MiniMaestro>
				<PORT>/dev/bodySensors</PORT>
				<SPEED>115200</SPEED>
				<ONSTATE>&gt;10</ONSTATE>
			</FSR_MiniMaestro>
			<HERKULEX_LiFe_BATTERY>
				<PORT>/dev/bodyServos</PORT>
				<SPEED>115200</SPEED>
				<ONSTATE>&gt;25</ONSTATE>
			</HERKULEX_LiFe_BATTERY>
		</ROBOT>
	</SENSORCONFIGS>

	<SERVOLIST>
		<SERVO type="HERKULEX" id="1">
			<NAME>TORSO_YAW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-27</MIN>
					<MAX>27</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="2">
			<NAME>HEAD_YAW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-51</MIN>
					<MAX>51</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="3">
			<NAME>HEAD_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-25</MIN>
					<MAX>24</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="4">
			<NAME>HEAD_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-30</MIN>
					<MAX>30</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="5">
			<NAME>MOUTH_OPEN</NAME>
			<CENTER>600</CENTER>
			<LIMITS>
				<POS>
					<MIN>-17</MIN>
					<MAX>17</MAX>
				</POS>
			</LIMITS>
			<DEFAULT>
				<SPEED>50</SPEED>
			</DEFAULT>
		</SERVO>
		<SERVO type="HERKULEX" id="6">
			<NAME>MOUTH_SMILE</NAME>
			<CENTER>450</CENTER>
			<LIMITS>
				<POS>
					<MIN>-15</MIN>
					<MAX>15</MAX>
				</POS>
			</LIMITS>
			<DEFAULT>
				<SPEED>50</SPEED>
			</DEFAULT>
		</SERVO>
		<SERVO type="HERKULEX" id="16">
			<NAME>L_SHOULDER_ROLL_UPPER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-180</MIN>
					<MAX>60</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="17">
			<NAME>L_SHOULDER_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-280</MIN>
					<MAX>10</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="18">
			<NAME>L_SHOULDER_ROLL_LOWER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-30</MIN>
					<MAX>145</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="19">
			<NAME>L_ELBOW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-90</MIN>
					<MAX>10</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="20">
			<NAME>L_WRIST_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-90</MIN>
					<MAX>45</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="32">
			<NAME>R_SHOULDER_ROLL_UPPER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-60</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="33">
			<NAME>R_SHOULDER_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-10</MIN>
					<MAX>280</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="34">
			<NAME>R_SHOULDER_ROLL_LOWER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-145</MIN>
					<MAX>30</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="35">
			<NAME>R_ELBOW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-70</MIN>
					<MAX>80</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HERKULEX" id="36">
			<NAME>R_WRIST_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-45</MIN>
					<MAX>90</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HS82MG" id="8">
			<NAME>EYE_R_LID</NAME>
			<CENTER>1600</CENTER>
			<LIMITS>
				<POS>
					<MIN>0</MIN>
					<MAX>90</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HS82MG" id="6">
			<NAME>EYE_R_YAW</NAME>
			<CENTER>1450</CENTER>
			<LIMITS>
				<POS>
					<MIN>-36</MIN>
					<MAX>36</MAX><commit_msg>add strength parameters<commit_after><?xml version="1.0"?>
<!-- Definition file for KASPAR Holds all information for a single Kaspar 
	instance, like servo specific information (limits and defaults) and information 
	that KasparGUI uses to display and format information for this Kaspar type -->
<ROBOT type="KASPAR" version="3" name="Kaspar Prototype A"
	defaultAction="Neutral">
	<SERVOCONFIGS>
		<VIRTUAL>
			<DEFAULT>
				<POS>0</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>False</MANUAL_POSITIONING>
				<IS_UPDATED>False</IS_UPDATED>
			</DEFAULT>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>200</MAX>
				</SPEED>
				<POS>
					<MIN>-180</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</VIRTUAL>
		<!-- Connection Settings -->
		<HERKULEX>
			<PORT>/dev/bodyServos</PORT>
			<SPEED>115200</SPEED>
			<DEFAULT>
				<POS>0</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>True</MANUAL_POSITIONING>
				<IS_UPDATED>True</IS_UPDATED>
			</DEFAULT>
			<SCALING>
				<!-- 360 / 1023 -->
				<POS>0.352</POS>
				<POS_OFFSET>512</POS_OFFSET>
				<SPEED>0.098</SPEED>
			</SCALING>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>200</MAX>
				</SPEED>
				<POS>
					<MIN>-180</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</HERKULEX>

		<HS82MG>
			<PORT>/dev/headServos</PORT>
			<SPEED>115200</SPEED>
			<DEFAULT>
				<POS>90</POS>
				<SPEED>100</SPEED>
				<MANUAL_POSITIONING>False</MANUAL_POSITIONING>
				<IS_UPDATED>True</IS_UPDATED>
			</DEFAULT>
			<SCALING>
				<!-- 360 / 2000 -->
				<POS>0.18</POS>
				<POS_OFFSET>1000</POS_OFFSET>
				<SPEED>0.1</SPEED>
			</SCALING>
			<LIMITS>
				<SPEED>
					<MIN>1</MIN>
					<MAX>500</MAX>
				</SPEED>
				<POS>
					<MIN>0</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
		</HS82MG>
	</SERVOCONFIGS>

	<SENSORCONFIGS>
		<ROBOT>
			<FSR_MiniMaestro>
				<PORT>/dev/bodySensors</PORT>
				<SPEED>115200</SPEED>
				<ONSTATE>&gt;10</ONSTATE>
			</FSR_MiniMaestro>
			<HERKULEX_LiFe_BATTERY>
				<PORT>/dev/bodyServos</PORT>
				<SPEED>115200</SPEED>
				<ONSTATE>&gt;25</ONSTATE>
			</HERKULEX_LiFe_BATTERY>
		</ROBOT>
	</SENSORCONFIGS>

	<SERVOLIST>
		<SERVO type="HERKULEX" id="1">
			<NAME>TORSO_YAW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-27</MIN>
					<MAX>27</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="2">
			<NAME>HEAD_YAW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-51</MIN>
					<MAX>51</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>5</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="3">
			<NAME>HEAD_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-25</MIN>
					<MAX>24</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>9</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="4">
			<NAME>HEAD_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-30</MIN>
					<MAX>30</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7.5</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="5">
			<NAME>MOUTH_OPEN</NAME>
			<CENTER>600</CENTER>
			<LIMITS>
				<POS>
					<MIN>-17</MIN>
					<MAX>17</MAX>
				</POS>
			</LIMITS>
			<DEFAULT>
				<SPEED>50</SPEED>
			</DEFAULT>
			<EXTRADATA>
				<STRENGTH>3</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="6">
			<NAME>MOUTH_SMILE</NAME>
			<CENTER>450</CENTER>
			<LIMITS>
				<POS>
					<MIN>-15</MIN>
					<MAX>15</MAX>
				</POS>
			</LIMITS>
			<DEFAULT>
				<SPEED>50</SPEED>
			</DEFAULT>
			<EXTRADATA>
				<STRENGTH>3</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="16">
			<NAME>L_SHOULDER_ROLL_UPPER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-180</MIN>
					<MAX>60</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="17">
			<NAME>L_SHOULDER_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-280</MIN>
					<MAX>10</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="18">
			<NAME>L_SHOULDER_ROLL_LOWER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-30</MIN>
					<MAX>145</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>6</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="19">
			<NAME>L_ELBOW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-90</MIN>
					<MAX>10</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>4</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="20">
			<NAME>L_WRIST_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-90</MIN>
					<MAX>45</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>3</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="32">
			<NAME>R_SHOULDER_ROLL_UPPER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-60</MIN>
					<MAX>180</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="33">
			<NAME>R_SHOULDER_PITCH</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-10</MIN>
					<MAX>280</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>7</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="34">
			<NAME>R_SHOULDER_ROLL_LOWER</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-145</MIN>
					<MAX>30</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>6</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="35">
			<NAME>R_ELBOW</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-70</MIN>
					<MAX>80</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>4</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HERKULEX" id="36">
			<NAME>R_WRIST_ROLL</NAME>
			<CENTER>512</CENTER>
			<LIMITS>
				<POS>
					<MIN>-45</MIN>
					<MAX>90</MAX>
				</POS>
			</LIMITS>
			<EXTRADATA>
				<STRENGTH>3</STRENGTH>
			</EXTRADATA>
		</SERVO>
		<SERVO type="HS82MG" id="8">
			<NAME>EYE_R_LID</NAME>
			<CENTER>1600</CENTER>
			<LIMITS>
				<POS>
					<MIN>0</MIN>
					<MAX>90</MAX>
				</POS>
			</LIMITS>
		</SERVO>
		<SERVO type="HS82MG" id="6">
			<NAME>EYE_R_YAW</NAME>
			<CENTER>1450</CENTER>
			<LIMITS>
				<POS>
					<MIN>-36</MIN>
					<MAX>36</MAX>
{'fraction_non_alphanumeric': 0.20685321715817695, 'fraction_numerical': 0.048173592493297585, 'mean_word_length': 2.595481927710843, 'pattern_counts': {'":': 0, '<': 843, '<?xml version=': 2, '>': 843, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4318045', 'n_tokens_mistral': 7356, 'n_tokens_neox': 5517, 'n_words': 753}