<jupyter_start><jupyter_text>Buildings  Fortifications| Level | Time (hours) | HP || --|--| -|| 1 | 6 | 40 || 2 | 9      | 100 || 3 | 12      | 120? | Level 1|  HP Remaining | Time Remaining ||-------------- | -------------- | | 40.0 | 6:00:00 | | 39.0 | 5:51:00 | | 38.0 | 5:42:00 | | 37.0 | 5:33:00 | | 36.0 | 5:24:00 | | 35.0 | 5:15:00 | | 34.0 | 5:06:00 | | 33.0 | 4:57:00 | | 32.0 | 4:48:00 | | 31.0 | 4:39:00 | | 30.0 | 4:30:00 | | 29.0 | 4:21:00 | | 28.0 | 4:12:00 | | 27.0 | 4:03:00 | | 26.0 | 3:54:00 | | 25.0 | 3:45:00 | | 24.0 | 3:36:00 | | 23.0 | 3:27:00 | | 22.0 | 3:18:00 | | 21.0 | 3:09:00 | | 20.0 | 3:00:00 | | 19.0 | 2:51:00 | | 18.0 | 2:42:00 | | 17.0 | 2:33:00 | | 16.0 | 2:24:00 | | 15.0 | 2:15:00 | | 14.0 | 2:06:00 | | 13.0 | 1:57:00 | | 12.0 | 1:48:00 | | 11.0 | 1:39:00 | | 10.0 | 1:30:00 | | 9.0 | 1:21:00 | | 8.0 | 1:12:00 | | 7.0 | 1:03:00 | | 6.0 | 0:54:00 | | 5.0 | 0:45:00 | | 4.0 | 0:36:00 | | 3.0 | 0:27:00 | | 2.0 | 0:18:00 | | 1.0 | 0:09:00 | | 0.0 | 0:00:00 |  Level 2|  HP Remaining | Time Remaining ||-------------- | -------------- | | 100.0 | 9:00:00 | | 99.0 | 8:54:36 | | 98.0 | 8:49:12 | | 97.0 | 8:43:48 | | 96.0 | 8:38:24 | | 95.0 | 8:33:00 | | 94.0 | 8:27:36 | | 93.0 | 8:22:12 | | 92.0 | 8:16:48 | | 91.0 | 8:11:24 | | 90.0 | 8:06:00 | | 89.0 | 8:00:36 | | 88.0 | 7:55:12 | | 87.0 | 7:49:48 | | 86.0 | 7:44:24 | | 85.0 | 7:39:00 | | 84.0 | 7:33:36 | | 83.0 | 7:28:12 | | 82.0 | 7:22:48 | | 81.0 | 7:17:24 | | 80.0 | 7:12:00 | | 79.0 | 7:06:36 | | 78.0 | 7:01:12 | | 77.0 | 6:55:48 | | 76.0 | 6:50:24 | | 75.0 | 6:45:00 | | 74.0 | 6:39:36 | | 73.0 | 6:34:12 | | 72.0 | 6:28:48 | | 71.0 | 6:23:24 | | 70.0 | 6:18:00 | | 69.0 | 6:12:36 | | 68.0 | 6:07:12 | | 67.0 | 6:01:48 | | 66.0 | 5:56:24 | | 65.0 | 5:51:00 | | 64.0 | 5:45:36 | | 63.0 | 5:40:12 | | 62.0 | 5:34:48 | | 61.0 | 5:29:24 | | 60.0 | 5:24:00 | | 59.0 | 5:18:36 | | 58.0 | 5:13:12 | | 57.0 | 5:07:48 | | 56.0 | 5:02:24 | | 55.0 | 4:57:00 | | 54.0 | 4:51:36 | | 53.0 | 4:46:12 | | 52.0 | 4:40:48 | | 51.0 | 4:35:24 | | 50.0 | 4:30:00 | | 49.0 | 4:24:36 | | 48.0 | 4:19:12 | | 47.0 | 4:13:48 | | 46.0 | 4:08:24 | | 45.0 | 4:03:00 | | 44.0 | 3:57:36 | | 43.0 | 3:52:12 | | 42.0 | 3:46:48 | | 41.0 | 3:41:24 | | 40.0 | 3:36:00 | | 39.0 | 3:30:36 | | 38.0 | 3:25:12 | | 37.0 | 3:19:48 | | 36.0 | 3:14:24 | | 35.0 | 3:09:00 | | 34.0 | 3:03:36 | | 33.0 | 2:58:12 | | 32.0 | 2:52:48 | | 31.0 | 2:47:24 | | 30.0 | 2:42:00 | | 29.0 | 2:36:36 | | 28.0 | 2:31:12 | | 27.0 | 2:25:48 | | 26.0 | 2:20:24 | | 25.0 | 2:15:00 | | 24.0 | 2:09:36 | | 23.0 | 2:04:12 | | 22.0 | 1:58:48 | | 21.0 | 1:53:24 | | 20.0 | 1:48:00 | | 19.0 | 1:42:36 | | 18.0 | 1:37:12 | | 17.0 | 1:31:48 | | 16.0 | 1:26:24 | | 15.0 | 1:21:00 | | 14.0 | 1:15:36 | | 13.0 | 1:10:12 | | 12.0 | 1:04:48 | | 11.0 | 0:59:24 | | 10.0 | 0:54:00 | | 9.0 | 0:48:36 | | 8.0 | 0:43:12 | | 7.0 | 0:37:48 | | 6.0 | 0:32:24 | | 5.0 | 0:27:00 | | 4.0 | 0:21:36 | | 3.0 | 0:16:12 | | 2.0 | 0:10:48 | | 1.0 | 0:05:24 | | 0.0 | 0:00:00 |    Level 3|  HP Remaining | Time Remaining ||-------------- | -------------- | | 120.0 | 12:00:00 | | 119.0 | 11:54:00 | | 118.0 | 11:48:00 | | 117.0 | 11:42:00 | | 116.0 | 11:36:00 | | 115.0 | 11:30:00 | | 114.0 | 11:24:00 | | 113.0 | 11:18:00 | | 112.0 | 11:12:00 | | 111.0 | 11:06:00 | | 110.0 | 11:00:00 | | 109.0 | 10:54:00 | | 108.0 | 10:48:00 | | 107.0 | 10:42:00 | | 106.0 | 10:36:00 | | 105.0 | 10:30:00 | | 104.0 | 10:24:00 | | 103.0 | 10:18:00 | | 102.0 | 10:12:00 | | 101.0 | 10:06:00 | | 100.0 | 10:00:00 | | 99.0 | 9:54:00 | | 98.0 | 9:48:00 | | 97.0 | 9:42:00 | | 96.0 | 9:36:00 | | 95.0 | 9:30:00 | | 94.0 | 9:24:00 | | 93.0 | 9:18:00 | | 92.0 | 9:12:00 | | 91.0 | 9:06:00 | | 90.0 | 9:00:00 | | 89.0 | 8:54:00 | | 88.0 | 8:48:00 | | 87.0 | 8:42:00 | | 86.0 | 8:36:00 | | 85.0 | 8:30:00 | | 84.0 | 8:24:00 | | 83.0 | 8:18:00 | | 82.0 | 8:12:00 | | 81.0 | 8:06:00 | | 80.0 | 8:00:00 | | 79.0 | 7:54:00 | | 78.0 | 7:48:00 | | 77.0 | 7:42:00 | | 76.0 | 7:36:00 | | 75.0 | 7:30:00 | | 74.0 | 7:24:00 | | 73.0 | 7:18:00 | | 72.0 | 7:12:00 | | 71.0 | 7:06:00 | | 70.0 | 7:00:00 | | 69.0 | 6:54:00 | | 68.0 | 6:48:00 | | 67.0 | 6:42:00 | | 66.0 | 6:36:00 | | 65.0 | 6:30:00 | | 64.0 | 6:24:00 | | 63.0 | 6:18:00 | | 62.0 | 6:12:00 | | 61.0 | 6:06:00 | | 60.0 | 6:00:00 | | 59.0 | 5:54:00 | | 58.0 | 5:48:00 | | 57.0 | 5:42:00 | | 56.0 | 5:36:00 | | 55.0 | 5:30:00 | | 54.0 | 5:24:00 | | 53.0 | 5:18:00 | | 52.0 | 5:12:00 | | 51.0 | 5:06:00 | | 50.0 | 5:00:00 | | 49.0 | 4:54:00 | | 48.0 | 4:48:00 | | 47.0 | 4:42:00 | | 46.0 | 4:36:00 | | 45.0 | 4:30:00 | | 44.0 | 4:24:00 | | 43.0 | 4:18:00 | | 42.0 | 4:12:00 | | 41.0 | 4:06:00 | | 40.0 | 4:00:00 | | 39.0 | 3:54:00 | | 38.0 | 3:48:00 | | 37.0 | 3:42:00 | | 36.0 | 3:36:00 | | 35.0 | 3:30:00 | | 34.0 | 3:24:00 | | 33.0 | 3:18:00 | | 32.0 | 3:12:00 | | 31.0 | 3:06:00 | | 30.0 | 3:00:00 | | 29.0 | 2:54:00 | | 28.0 | 2:48:00 | | 27.0 | 2:42:00 | | 26.0 | 2:36:00 | | 25.0 | 2:30:00 | | 24.0 | 2:24:00 | | 23.0 | 2:18:00 | | 22.0 | 2:12:00 | | 21.0 | 2:06:00 | | 20.0 | 2:00:00 | | 19.0 | 1:54:00 | | 18.0 | 1:48:00 | | 17.0 | 1:42:00 | | 16.0 | 1:36:00 | | 15.0 | 1:30:00 | | 14.0 | 1:24:00 | | 13.0 | 1:18:00 | | 12.0 | 1:12:00 | | 11.0 | 1:06:00 | | 10.0 | 1:00:00 | | 9.0 | 0:54:00 | | 8.0 | 0:48:00 | | 7.0 | 0:42:00 | | 6.0 | 0:36:00 | | 5.0 | 0:30:00 | | 4.0 | 0:24:00 | | 3.0 | 0:18:00 | | 2.0 | 0:12:00 | | 1.0 | 0:06:00 | | 0.0 | 0:00:00 |<jupyter_code>fort_times = np.array([6, 9, 12]) # hours
fort_HP = np.array([40, 100, 120])

generateTable(fort_times, fort_HP)<jupyter_output>|  HP Remaining | Time Remaining |
|-------------- | -------------- | 
| 40.0 | 6:00:00 | 
| 39.0 | 5:51:00 | 
| 38.0 | 5:42:00 | 
| 37.0 | 5:33:00 | 
| 36.0 | 5:24:00 | 
| 35.0 | 5:15:00 | 
| 34.0 | 5:06:00 | 
| 33.0 | 4:57:00 | 
| 32.0 | 4:48:00 | 
| 31.0 | 4:39:00 | 
| 30.0 | 4:30:00 | 
| 29.0 | 4:21:00 | 
| 28.0 | 4:12:00 | 
| 27.0 | 4:03:00 | 
| 26.0 | 3:54:00 | 
| 25.0 | 3:45:00 | 
| 24.0 | 3:36:00 | 
| 23.0 | 3:27:00 | 
| 22.0 | 3:18:00 | 
| 21.0 | 3:09:00 | 
| 20.0 | 3:00:00 | 
| 19.0 | 2:51:00 | 
| 18.0 | 2:42:00 | 
| 17.0 | 2:33:00 | 
| 16.0 | 2:24:00 | 
| 15.0 | 2:15:00 | 
| 14.0 | 2:06:00 | 
| 13.0 | 1:57:00 | 
| 12.0 | 1:48:00 | 
| 11.0 | 1:39:00 | 
| 10.0 | 1:30:00 | 
| 9.0 | 1:21:00 | 
| 8.0 | 1:12:00 | 
| 7.0 | 1:03:00 | 
| 6.0 | 0:54:00 | 
| 5.0 | 0:45:00 | 
| 4.0 | 0:36:00 | 
| 3.0 | 0:27:00 | 
| 2.0 | 0:18:00 | 
| 1.0 | 0:09:00 | 
| 0.0 | 0:00:00 | 


|  HP Remaining | Time Remaining |
|-------------- | -------------- | 
| 100.0 | 9:00:00 | 
| 99.0 | 8:54:36 | 
| 98.[...]
{'fraction_non_alphanumeric': 0.31640923688637407, 'fraction_numerical': 0.3798745985624713, 'mean_word_length': 2.0376219228982815, 'pattern_counts': {'":': 0, '<': 4, '<?xml version=': 0, '>': 4, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, '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}}
{'chain_length': '1', 'dir': 'jupyter-structured-clean-dedup', 'id': '446449', 'license': 'MIT', 'n_tokens_mistral': 5228, 'n_tokens_neox': 3656, 'n_words': 665, 'path': 'TimeCalculations.ipynb', 'repo_name': 'Universal98/CallofWarTools', 'size': '6539'}