Jon Solow commited on
Commit
ddb39cb
1 Parent(s): dd64f21

Remove all yfdashboard specific that wont carry over

Browse files
src/Home.py CHANGED
@@ -1,17 +1,16 @@
1
  import streamlit as st
2
 
3
- from config import DEFAULT_ICON, LEAGUE_NAME
4
  from login_component import get_authorization_button
5
- from page_selector import remove_seasonal_pages
6
 
7
 
8
  def get_app():
9
- keeper_title = f"{LEAGUE_NAME}"
10
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON)
11
  get_authorization_button()
12
  st.markdown(
13
- f"""
14
- Welcome {LEAGUE_NAME}!
15
 
16
  Navigate between pages using the left sidebar.
17
 
@@ -20,8 +19,6 @@ def get_app():
20
  """
21
  )
22
 
23
- remove_seasonal_pages()
24
-
25
 
26
  if __name__ == "__main__":
27
  get_app()
 
1
  import streamlit as st
2
 
3
+ from config import DEFAULT_ICON
4
  from login_component import get_authorization_button
 
5
 
6
 
7
  def get_app():
8
+ keeper_title = "NFL Playoff Challenge"
9
  st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON)
10
  get_authorization_button()
11
  st.markdown(
12
+ """
13
+ Welcome!
14
 
15
  Navigate between pages using the left sidebar.
16
 
 
19
  """
20
  )
21
 
 
 
22
 
23
  if __name__ == "__main__":
24
  get_app()
src/config.py CHANGED
@@ -1,3 +1 @@
1
- LEAGUE_NAME = "LOFG"
2
  DEFAULT_ICON = "🏉"
3
- LEAGUE_NUMBER_TEAMS = 12
 
 
1
  DEFAULT_ICON = "🏉"
 
src/maximum_roster_strategy/__init__.py DELETED
File without changes
src/maximum_roster_strategy/data_loader.py DELETED
@@ -1,19 +0,0 @@
1
- import os
2
- import pandas as pd
3
-
4
-
5
- MRS_SHEET_ID = os.environ.get("MRS_SHEET_ID")
6
-
7
-
8
- def get_google_sheet_data() -> pd.DataFrame:
9
- return get_sheet_data(0)
10
-
11
-
12
- def get_sheet_data(sheet_id: int = 0):
13
- sheet_url = f"https://docs.google.com/spreadsheet/ccc?key={MRS_SHEET_ID}&output=csv&gid={sheet_id}"
14
- df = pd.read_csv(sheet_url)
15
- return df
16
-
17
-
18
- def get_timeslot_labels() -> pd.DataFrame:
19
- return get_sheet_data(1875906423)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/page_selector.py DELETED
@@ -1,40 +0,0 @@
1
- from streamlit.source_util import _on_pages_changed, get_pages
2
-
3
- # Adapted from https://discuss.streamlit.io/t/how-to-hide-all-pages-before-login/32508
4
- # Note this code is intended to remove pages at app load time, not based on login
5
-
6
- SEASON_MODE = "season"
7
- OFFSEASON_MODE = "offseason"
8
-
9
- CURRENT_MODE = SEASON_MODE
10
-
11
- MAIN_PAGE_FILE = "Home.py"
12
-
13
- MODE_PAGE_EXCLUSION_MAP = {
14
- SEASON_MODE: [
15
- "Keepers",
16
- "ECR",
17
- "League_Simulation",
18
- "Keeper_Rules",
19
- "Maximum_Roster_Strategy",
20
- ],
21
- OFFSEASON_MODE: [
22
- "Practice_Reports",
23
- "League_Simulation",
24
- "Maximum_Roster_Strategy",
25
- ],
26
- }
27
-
28
-
29
- def remove_seasonal_pages():
30
- all_pages = get_pages(MAIN_PAGE_FILE)
31
- pages_to_remove = MODE_PAGE_EXCLUSION_MAP[CURRENT_MODE]
32
-
33
- page_keys_to_remove = []
34
- for k, v in all_pages.items():
35
- if v["page_name"] in pages_to_remove:
36
- page_keys_to_remove.append(k)
37
- for k_remove in page_keys_to_remove:
38
- del all_pages[k_remove]
39
-
40
- _on_pages_changed.send()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/10_Player_News.py DELETED
@@ -1,53 +0,0 @@
1
- import datetime
2
- import streamlit as st
3
-
4
- from config import DEFAULT_ICON
5
- from shared_page import common_page_config
6
-
7
- from queries.nbcsports.player_news import get_player_news_window_hours
8
-
9
-
10
- @st.cache_data(ttl=60 * 60 * 24)
11
- def load_data():
12
- data = get_player_news_window_hours(24)
13
- teams_list = sorted(filter(None, data.Team.unique()))
14
- position_list = data.Position.unique()
15
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
16
- return data, teams_list, position_list, data_load_time_str
17
-
18
-
19
- def get_page():
20
- page_title = "Player News - Last 24 Hours"
21
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
22
- common_page_config()
23
- st.title(page_title)
24
- if st.button("Refresh Data"):
25
- st.cache_data.clear()
26
- data, teams_list, position_list, data_load_time_str = load_data()
27
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
28
-
29
- teams_selected = st.multiselect("Team:", teams_list, placeholder="Select a team to filter") or teams_list
30
-
31
- with st.container():
32
- filtered_data = data[(data.Team.isin(teams_selected))]
33
- st.dataframe(
34
- filtered_data,
35
- hide_index=True,
36
- height=35 * (len(filtered_data) + 1) + 12,
37
- use_container_width=True,
38
- column_order=[
39
- "Date/Time",
40
- "Name",
41
- "Headline",
42
- "Team",
43
- "Position",
44
- ],
45
- column_config={
46
- "Date/Time": st.column_config.DatetimeColumn(format="MM-DD HH:mm"),
47
- "Team": st.column_config.TextColumn(width="small"),
48
- },
49
- )
50
-
51
-
52
- if __name__ == "__main__":
53
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/11_Next_Gen_Stats.py DELETED
@@ -1,70 +0,0 @@
1
- import streamlit as st
2
-
3
- from config import DEFAULT_ICON
4
- from shared_page import common_page_config
5
-
6
- from streamlit_filter import get_multiselect_for_df_column
7
- from queries.nflverse.github_data import get_nextgen_stats, get_current_tables, SEASON
8
-
9
-
10
- hide_columns = [
11
- "season",
12
- "season_type",
13
- "player_gsis_id",
14
- "player_first_name",
15
- "player_last_name",
16
- "player_jersey_number",
17
- "player_short_name",
18
- ]
19
-
20
-
21
- def get_page():
22
- page_title = f"Next Gen Stats - {SEASON}"
23
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- common_page_config()
25
- st.title(page_title)
26
-
27
- stat_category = st.selectbox("Stat Category", ["Passing", "Rushing", "Receiving"])
28
- ngs_table_name = f"nextgen_stats_ngs_{stat_category.lower()}"
29
- current_tables_list = get_current_tables()
30
-
31
- if ngs_table_name not in current_tables_list:
32
- st.write("Data not loaded.")
33
- st.write("Check loaded data [here](./Load_Data)")
34
- return
35
- data = get_nextgen_stats(SEASON, stat_category)
36
-
37
- season_or_week = st.selectbox("Season or Weekly Stats", ["Season", "Week"])
38
- if season_or_week == "Season":
39
- data = data[data["week"] == 0]
40
- data.drop(columns=["week"], inplace=True)
41
- else:
42
- data = data[data["week"] > 0]
43
- week_selection = st.slider(
44
- "Filter Week Range:",
45
- min_value=data["week"].min(),
46
- max_value=data["week"].max(),
47
- value=(data["week"].min(), data["week"].max()),
48
- step=1,
49
- )
50
- data = data[data["week"].between(*week_selection)]
51
-
52
- data.drop(columns=hide_columns, inplace=True)
53
- positions_selected = get_multiselect_for_df_column(data, "player_position")
54
- teams_selected = get_multiselect_for_df_column(data, "team_abbr")
55
-
56
- data = data[(data["player_position"].isin(positions_selected) & data["team_abbr"].isin(teams_selected))]
57
-
58
- with st.container():
59
- filtered_data = data
60
- st.dataframe(
61
- filtered_data,
62
- hide_index=True,
63
- # height=35 * (len(filtered_data) + 1) + 12,
64
- use_container_width=False,
65
- column_config={},
66
- )
67
-
68
-
69
- if __name__ == "__main__":
70
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/1_Keepers.py DELETED
@@ -1,178 +0,0 @@
1
- import os
2
- import numpy as np
3
- import pandas as pd
4
- import streamlit as st
5
-
6
- from config import DEFAULT_ICON, LEAGUE_NAME, LEAGUE_NUMBER_TEAMS
7
- from shared_page import common_page_config
8
- from streamlit_filter import filter_dataframe
9
-
10
-
11
- KEEPER_DATA_URL = "../../tests/mocks/2023_keepers.csv"
12
- HEADSHOT_DATA_URL = "../../tests/mocks/2023_player_headshots.csv"
13
-
14
-
15
- def load_player_ids() -> pd.DataFrame:
16
- df = pd.read_csv(r"https://raw.githubusercontent.com/dynastyprocess/data/master/files/db_playerids.csv")
17
- df["merge_id"] = df["yahoo_id"].combine_first(df["stats_id"])
18
- return df
19
-
20
-
21
- def load_adp() -> pd.DataFrame:
22
- df = pd.read_csv(r"https://raw.githubusercontent.com/dynastyprocess/data/master/files/db_fpecr_latest.csv")
23
- df = df.loc[
24
- df.fp_page == "/nfl/rankings/ppr-superflex-cheatsheets.php",
25
- [
26
- "yahoo_id",
27
- "ecr",
28
- "sd",
29
- ],
30
- ]
31
- return df
32
-
33
-
34
- def convert_ecr_to_round_val(ecr_float: float, round_offset: float = 1.0, pick_offset: float = -1.0) -> float:
35
- # As a float, store pick 1 of round 1 as 1.0
36
- return round_offset + (ecr_float + pick_offset) / LEAGUE_NUMBER_TEAMS
37
-
38
-
39
- def add_opinionated_keeper_value(df: pd.DataFrame):
40
- # Manual Hack for overranking of backup QBs
41
- df.loc[
42
- df["name"].isin(
43
- [
44
- "Teddy Bridgewater",
45
- "Davis Mills",
46
- "Andy Dalton",
47
- "Tyler Huntley",
48
- "Mike White",
49
- "Gardner Minshew",
50
- "Colt McCoy",
51
- "Sam Darnold",
52
- "Carson Wentz",
53
- "Trey Lance",
54
- "Taylor Heinicke",
55
- ]
56
- ),
57
- ["ecr"],
58
- ] = np.nan
59
-
60
- df["ecr"] = df["ecr"].apply(convert_ecr_to_round_val)
61
- # Convert sd without offset to show as pure pick diff
62
- df["sd"] = df["sd"].apply(lambda x: convert_ecr_to_round_val(x, 0, 0))
63
- # assumes midround keeper
64
- # fill -99 for players that are not ranked in ecr
65
- df["value_keeper"] = (df["keeper_cost"] + 0.5 - df["ecr"]).fillna(-99)
66
-
67
-
68
- @st.cache_data(ttl=60 * 60 * 24)
69
- def load_data():
70
- data = pd.read_csv(os.path.join(os.path.dirname(__file__), KEEPER_DATA_URL), index_col=0)
71
- # Hack to get position, replace with better position from yahoo api in future
72
- data["position"] = data["eligible_positions"].apply(lambda x: eval(x)[0])
73
- data.columns = data.columns.str.lower()
74
- teams_list = sorted(list(data["team_name"].unique()))
75
-
76
- # Merge player ids
77
- df_player_ids = load_player_ids()
78
- data = data.merge(df_player_ids, how="left", left_on="player_id", right_on="merge_id", suffixes=("", "_ids"))
79
-
80
- # Merge ADP
81
- df_adp = load_adp()
82
- data = data.merge(df_adp, how="left", left_on="player_id", right_on="yahoo_id", suffixes=("", "_adp"))
83
- add_opinionated_keeper_value(data)
84
- return data, teams_list
85
-
86
-
87
- def filtered_keeper_dataframe(data: pd.DataFrame, teams_list: list[str]):
88
- teams_selected = st.multiselect("Team:", teams_list, placeholder="Select a user team to filter")
89
- teams_filter = data["team_name"].isin(teams_selected) if teams_selected else data["team_name"].isin(teams_list)
90
-
91
- eligible_options = [True, False]
92
- is_eligible_selected = st.multiselect(
93
- "Keeper Eligible:", eligible_options, placeholder="Select True to filter eligible only"
94
- )
95
- eligible_filter = (
96
- data["eligible"].isin(is_eligible_selected) if is_eligible_selected else data["eligible"].isin(eligible_options)
97
- )
98
- is_advanced = st.checkbox("Show Advanced View")
99
-
100
- id_cols = [
101
- "team_name",
102
- "headshot_url",
103
- "name",
104
- ]
105
-
106
- id_cols_advanced = [
107
- "team",
108
- "position",
109
- ]
110
-
111
- cost_cols = [
112
- "keeper_cost",
113
- "eligible",
114
- ]
115
-
116
- cost_cols_advanced = [
117
- "years_eligible",
118
- ]
119
-
120
- adp_cols: list[str] = []
121
-
122
- adp_cols_advanced = [
123
- "ecr",
124
- "value_keeper",
125
- ]
126
-
127
- if is_advanced:
128
- show_columns = id_cols + id_cols_advanced + cost_cols + cost_cols_advanced + adp_cols + adp_cols_advanced
129
- else:
130
- show_columns = id_cols + cost_cols + adp_cols
131
-
132
- data_with_filters_applied = data.loc[teams_filter & eligible_filter, show_columns]
133
-
134
- filtered_data = filter_dataframe(data_with_filters_applied)
135
- st.dataframe(
136
- filtered_data,
137
- hide_index=True,
138
- height=35 * (len(filtered_data) + 1) + 12,
139
- use_container_width=True,
140
- column_config={
141
- "team_name": st.column_config.TextColumn(label="League Team", help="Name of fantasy League team."),
142
- "headshot_url": st.column_config.ImageColumn(label="", help="Player image"),
143
- "name": st.column_config.TextColumn(label="Name", help="Player's name"),
144
- "team": st.column_config.TextColumn(label="NFL Team"),
145
- "position": st.column_config.TextColumn(label="Position", help="Player's position"),
146
- "keeper_cost": st.column_config.NumberColumn(
147
- label="Keeper Cost", help="Draft Round Cost to keep player. See Rules for details."
148
- ),
149
- "eligible": st.column_config.CheckboxColumn(label="Eligible", help="Is player eligible to be keeper?"),
150
- "years_eligible": st.column_config.NumberColumn(
151
- label="Years Eligible",
152
- help="Number of further consecutive seasons player can be kept (subject to maximum of 2)",
153
- ),
154
- "ecr": st.column_config.NumberColumn(
155
- label="ECR",
156
- help="Player's average draft round.pick Expert Consensus Rank (ECR) for PPR - Superflex League",
157
- ),
158
- "value_keeper": st.column_config.NumberColumn(
159
- label="Value Keeper",
160
- help="Approx. number of draft rounds of keeper value vs ECR PPR - Superflex League",
161
- ),
162
- },
163
- )
164
-
165
-
166
- def get_keeper_app():
167
- keeper_title = f"{LEAGUE_NAME} Keeper Options"
168
- st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
169
- common_page_config()
170
- st.title(keeper_title)
171
- data, teams_list = load_data()
172
-
173
- with st.container():
174
- filtered_keeper_dataframe(data, teams_list)
175
-
176
-
177
- if __name__ == "__main__":
178
- get_keeper_app()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/3_ECR.py DELETED
@@ -1,88 +0,0 @@
1
- import os
2
- import pandas as pd
3
- import streamlit as st
4
-
5
- from config import DEFAULT_ICON
6
- from shared_page import common_page_config
7
- from streamlit_filter import filter_dataframe
8
-
9
-
10
- KEEPER_DATA_URL = "../../tests/mocks/2023_keepers.csv"
11
- HEADSHOT_DATA_URL = "../../tests/mocks/2023_player_headshots.csv"
12
-
13
-
14
- def load_adp() -> pd.DataFrame:
15
- df = pd.read_csv(r"https://raw.githubusercontent.com/dynastyprocess/data/master/files/db_fpecr_latest.csv")
16
- df["ranking_type"] = df["fp_page"].apply(lambda x: os.path.split(x)[-1].replace(".php", ""))
17
- return df
18
-
19
-
20
- @st.cache_data(ttl=60 * 60 * 24)
21
- def load_data():
22
- # Merge ADP
23
- data = load_adp()
24
- ranking_type_list = sorted(list(data.ranking_type.unique()))
25
- return data, ranking_type_list
26
-
27
-
28
- def filtered_ecr_dataframe(data: pd.DataFrame, ranking_type_list: list[str]):
29
- default_ix = ranking_type_list.index("ppr-superflex-cheatsheets")
30
- ranking_type_selected = st.selectbox("ECR Format:", ranking_type_list, index=default_ix)
31
- ranking_type_filter = data["ranking_type"] == ranking_type_selected
32
-
33
- is_advanced = st.checkbox("Show Advanced View")
34
-
35
- id_cols = [
36
- # "player_square_image_url",
37
- "player",
38
- "pos",
39
- "team",
40
- ]
41
-
42
- id_cols_advanced = [
43
- "bye",
44
- "player_owned_yahoo",
45
- ]
46
-
47
- adp_cols: list[str] = [
48
- "ecr",
49
- ]
50
-
51
- adp_cols_advanced = ["sd", "best", "worst"]
52
-
53
- if is_advanced:
54
- show_columns = id_cols + id_cols_advanced + adp_cols + adp_cols_advanced
55
- else:
56
- show_columns = id_cols + adp_cols
57
-
58
- data_filtered_by_ranking_type = data.loc[ranking_type_filter]
59
- latest_scrape_date = data_filtered_by_ranking_type.scrape_date.max()
60
- st.write(f"Scraped data as of: {latest_scrape_date}")
61
-
62
- filtered_data = filter_dataframe(data.loc[ranking_type_filter, show_columns])
63
- st.dataframe(
64
- filtered_data,
65
- hide_index=True,
66
- height=35 * (len(filtered_data) + 1) + 12,
67
- use_container_width=True,
68
- column_config={
69
- # "player_square_image_url": st.column_config.ImageColumn(label="", help="Player image"),
70
- },
71
- )
72
-
73
- st.write("Source: https://github.com/dynastyprocess/data")
74
-
75
-
76
- def get_keeper_app():
77
- keeper_title = "Expert Consensus Rankings"
78
- st.set_page_config(page_title=keeper_title, page_icon=DEFAULT_ICON, layout="wide")
79
- common_page_config()
80
- st.title(keeper_title)
81
- data, ecr_type_list = load_data()
82
-
83
- with st.container():
84
- filtered_ecr_dataframe(data, ecr_type_list)
85
-
86
-
87
- if __name__ == "__main__":
88
- get_keeper_app()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/4_Practice_Reports.py DELETED
@@ -1,66 +0,0 @@
1
- import datetime
2
- import streamlit as st
3
-
4
- from config import DEFAULT_ICON
5
- from shared_page import common_page_config
6
-
7
- from queries.nfl_teams.practice_reports import scrape_all_team_injury_report, CURRENT_SEASON, CURRENT_WEEK
8
- from streamlit_filter import filter_dataframe
9
-
10
-
11
- @st.cache_data(ttl=60 * 60 * 1)
12
- def load_data():
13
- data = scrape_all_team_injury_report()
14
- teams_list = list(data.Team.unique())
15
- position_list = list(data.Position.unique())
16
- status_list = list(data.game_status.unique())
17
- last_practice_day_list = list(data["Last Practice Day"].unique())
18
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
19
- return data, teams_list, position_list, status_list, last_practice_day_list, data_load_time_str
20
-
21
-
22
- def get_page():
23
- page_title = f"Team Practice Reports - {CURRENT_SEASON} Week {CURRENT_WEEK}"
24
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
25
- common_page_config()
26
- st.title(page_title)
27
- if st.button("Refresh Data"):
28
- st.cache_data.clear()
29
- data, teams_list, position_list, status_list, last_practice_day_list, data_load_time_str = load_data()
30
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
31
- teams_selected = st.multiselect("Team:", teams_list, placeholder="Select a team to filter") or teams_list
32
- positions_selected = (
33
- st.multiselect("Position:", position_list, placeholder="Select a position to filter") or position_list
34
- )
35
- status_selected = (
36
- st.multiselect("Game Status:", status_list, placeholder="Select a game status to filter") or status_list
37
- )
38
- last_practice_day_selected = (
39
- st.multiselect(
40
- "Last Practice Day:", last_practice_day_list, placeholder="Select a day of last team practice to filter"
41
- )
42
- or last_practice_day_list
43
- )
44
-
45
- with st.container():
46
- filtered_data = filter_dataframe(
47
- data[
48
- (
49
- data.Team.isin(teams_selected)
50
- & data.Position.isin(positions_selected)
51
- & data.game_status.isin(status_selected)
52
- & data["Last Practice Day"].isin(last_practice_day_selected)
53
- )
54
- ]
55
- )
56
- st.dataframe(
57
- filtered_data,
58
- hide_index=True,
59
- height=35 * (len(filtered_data) + 1) + 12,
60
- use_container_width=False,
61
- column_config={},
62
- )
63
-
64
-
65
- if __name__ == "__main__":
66
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/50_League_Simulation.py DELETED
@@ -1,26 +0,0 @@
1
- import streamlit as st
2
-
3
- from config import DEFAULT_ICON
4
- from shared_page import common_page_config
5
-
6
- from login_component import is_token_in_session
7
-
8
-
9
- def get_page():
10
- page_title = "Yahoo FF League Simulation"
11
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
12
- common_page_config()
13
- st.title(page_title)
14
-
15
- if not is_token_in_session():
16
- st.write(
17
- "You must authorize the application to access your account in order to use this feature."
18
- " Please click Login button above."
19
- )
20
-
21
- else:
22
- st.write("Logged in. Feature to go here")
23
-
24
-
25
- if __name__ == "__main__":
26
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/5_Targets.py DELETED
@@ -1,56 +0,0 @@
1
- import datetime
2
- import numpy as np
3
- import streamlit as st
4
-
5
- from config import DEFAULT_ICON
6
- from shared_page import common_page_config
7
-
8
- from queries.footballguys.constants import YEAR
9
- from queries.footballguys.refresh import request_stat
10
- from streamlit_filter import filter_dataframe
11
-
12
-
13
- @st.cache_data(ttl=60 * 60 * 24)
14
- def load_data():
15
- stat_name = "targets"
16
- data = request_stat(stat_name)
17
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
18
- return data, data_load_time_str
19
-
20
-
21
- def get_page():
22
- page_title = f"Player Targets - {YEAR}"
23
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- common_page_config()
25
- st.title(page_title)
26
- if st.button("Refresh Data"):
27
- st.cache_data.clear()
28
- data, data_load_time_str = load_data()
29
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
30
-
31
- selected_subtotals = st.selectbox("Show:", ["Player Totals", "Position Totals"], index=0)
32
- if selected_subtotals == "Player Totals":
33
- data = data[~data.name.str.contains(" Totals")]
34
- elif selected_subtotals == "Position Totals":
35
- data = data[data.name.str.contains(" Totals")]
36
-
37
- value_types = st.selectbox("Counts / Percent:", ["Counts", "Percent"], index=0)
38
- if value_types == "Percent":
39
- numerical_data = data.select_dtypes(include=np.number)
40
- numerical_cols = numerical_data.columns
41
- df_percent_values = numerical_data / data.groupby("TEAM").transform(sum).select_dtypes(include=np.number)
42
- data.loc[:, numerical_cols] = df_percent_values
43
-
44
- with st.container():
45
- filtered_data = filter_dataframe(data)
46
- st.dataframe(
47
- filtered_data,
48
- hide_index=True,
49
- height=35 * (len(filtered_data) + 1) + 12,
50
- use_container_width=False,
51
- column_config={},
52
- )
53
-
54
-
55
- if __name__ == "__main__":
56
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/6_Redzone_Opportunities.py DELETED
@@ -1,56 +0,0 @@
1
- import datetime
2
- import numpy as np
3
- import streamlit as st
4
-
5
- from config import DEFAULT_ICON
6
- from shared_page import common_page_config
7
-
8
- from queries.footballguys.constants import YEAR
9
- from queries.footballguys.refresh import request_stat
10
- from streamlit_filter import filter_dataframe
11
-
12
-
13
- @st.cache_data(ttl=60 * 60 * 24)
14
- def load_data():
15
- stat_name = "redzone"
16
- data = request_stat(stat_name)
17
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
18
- return data, data_load_time_str
19
-
20
-
21
- def get_page():
22
- page_title = f"Player Redzone Opportunities - {YEAR}"
23
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- common_page_config()
25
- st.title(page_title)
26
- if st.button("Refresh Data"):
27
- st.cache_data.clear()
28
- data, data_load_time_str = load_data()
29
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
30
-
31
- selected_subtotals = st.selectbox("Show:", ["Player Totals", "Position Totals"], index=0)
32
- if selected_subtotals == "Player Totals":
33
- data = data[~data.name.str.contains(" Totals")]
34
- elif selected_subtotals == "Position Totals":
35
- data = data[data.name.str.contains(" Totals")]
36
-
37
- value_types = st.selectbox("Counts / Percent:", ["Counts", "Percent"], index=0)
38
- if value_types == "Percent":
39
- numerical_data = data.select_dtypes(include=np.number)
40
- numerical_cols = numerical_data.columns
41
- df_percent_values = numerical_data / data.groupby("TEAM").transform(sum).select_dtypes(include=np.number)
42
- data.loc[:, numerical_cols] = df_percent_values
43
-
44
- with st.container():
45
- filtered_data = filter_dataframe(data)
46
- st.dataframe(
47
- filtered_data,
48
- hide_index=True,
49
- height=35 * (len(filtered_data) + 1) + 12,
50
- use_container_width=False,
51
- column_config={},
52
- )
53
-
54
-
55
- if __name__ == "__main__":
56
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/7_Snap_Counts.py DELETED
@@ -1,69 +0,0 @@
1
- import datetime
2
- import streamlit as st
3
-
4
- from config import DEFAULT_ICON
5
- from shared_page import common_page_config
6
-
7
- from queries.footballguys.constants import YEAR
8
- from queries.nflverse.github_data import get_snap_counts, get_current_tables, SEASON
9
-
10
-
11
- def load_data():
12
- data = get_snap_counts(YEAR)
13
- data = data[data.fantasy_position]
14
- teams_list = sorted(data.team.unique())
15
- position_list = data.position.unique()
16
- weeks_list = sorted(data.week.unique())
17
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
18
- return data, teams_list, position_list, weeks_list, data_load_time_str
19
-
20
-
21
- def get_page():
22
- page_title = f"Snap Counts and Percentages - {YEAR}"
23
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- common_page_config()
25
- st.title(page_title)
26
- if f"snap_counts_snap_counts_{SEASON}" not in get_current_tables():
27
- st.write("Data not loaded.")
28
- st.write("Check loaded data [here](./Load_Data)")
29
- return
30
- data, teams_list, position_list, weeks_list, data_load_time_str = load_data()
31
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
32
- teams_selected = st.multiselect("Team:", teams_list, placeholder="Select a team to filter") or teams_list
33
- positions_selected = (
34
- st.multiselect("Position:", position_list, placeholder="Select a position to filter") or position_list
35
- )
36
- weeks_selected = st.multiselect("Week:", weeks_list, placeholder="Select a week to filter") or weeks_list
37
-
38
- with st.container():
39
- filtered_data = data[
40
- (data.team.isin(teams_selected) & data.position.isin(positions_selected) & data.week.isin(weeks_selected))
41
- ]
42
- st.dataframe(
43
- filtered_data,
44
- hide_index=True,
45
- # height=35 * (len(filtered_data) + 1) + 12,
46
- use_container_width=False,
47
- column_order=[
48
- "season",
49
- "game_type",
50
- "week",
51
- "player",
52
- "position",
53
- "team",
54
- "opponent",
55
- "offense_snaps",
56
- "offense_pct",
57
- "defense_snaps",
58
- "defense_pct",
59
- "st_snaps",
60
- "st_pct",
61
- ],
62
- column_config={
63
- "season": st.column_config.TextColumn(help="Year of NFL Season"),
64
- },
65
- )
66
-
67
-
68
- if __name__ == "__main__":
69
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/80_Maximum_Roster_Strategy.py DELETED
@@ -1,165 +0,0 @@
1
- import pandas as pd
2
- import streamlit as st
3
- import streamlit.components.v1 as components
4
-
5
-
6
- from config import DEFAULT_ICON
7
- from shared_page import common_page_config, get_local_style
8
- from maximum_roster_strategy import data_loader
9
-
10
-
11
- MINIMUM_WEEK = 6
12
- MAXIMUM_WEEK = 7
13
-
14
- MIN_TIER = 1
15
- MAX_TIER = 4
16
-
17
- POSITION_OPTIONS = ["RB", "WR", "TE", "QB"]
18
-
19
- POSITION_ABBR_FULL_NAME_MAP = {
20
- "RB": "Running Backs",
21
- "WR": "Wide Receivers",
22
- "TE": "Tight Ends",
23
- "QB": "Quarterbacks (Superflex / 2QB Leagues Only)",
24
- }
25
-
26
-
27
- @st.cache_data(ttl=5 * 60)
28
- def load_data():
29
- return data_loader.get_google_sheet_data(), data_loader.get_timeslot_labels()
30
-
31
-
32
- def get_player_grid_div(player_series: pd.Series) -> str:
33
- player_notes = player_series["Hold Condition"]
34
- if (outcome := player_series["Outcome"]) == "Drop":
35
- player_class = "drop-player"
36
- elif outcome == "Light Hold":
37
- player_class = "light-hold-player"
38
- elif outcome == "Hold":
39
- player_class = "hold-player"
40
- else:
41
- player_class = "undetermined-player"
42
-
43
- if isinstance(player_weekly_note := player_series["Article Notes"], str):
44
- player_notes += "<br><br>" + player_weekly_note
45
- return f"""
46
- <details class="mrs-grid-player content">
47
- <summary class="{player_class}">
48
- {player_series["Formatted"]}
49
- </summary>
50
- <p>
51
- {player_notes}
52
- </p>
53
- </details>
54
- """
55
-
56
-
57
- def get_time_slot_div(time_slot_list: list[str]) -> str:
58
- code_str = ""
59
- for time_slot_idx, time_slot in enumerate(time_slot_list):
60
- code_str += f"""<div class="timeslot{time_slot_idx + 1} timeslot">{time_slot}</div>\n"""
61
- return code_str
62
-
63
-
64
- def get_tier_div(tier_str: str | int, tier_num: str | int) -> str:
65
- return f"""<div class="tier{tier_num} tier">Tier {tier_str}</div>"""
66
-
67
-
68
- def get_player_container(df_players: pd.DataFrame, slot_number: int | str) -> str:
69
- if len(df_players) == 0:
70
- player_code_str = "<br>"
71
- else:
72
- player_code_str = "\n".join(df_players.apply(get_player_grid_div, axis=1).tolist())
73
- return f"""<div class="playerslot{slot_number} playerslot">{player_code_str}</div>"""
74
-
75
-
76
- def get_position_breakdown(df: pd.DataFrame, position_abbr: str, position_full_str: str, time_slots: list[str]):
77
- with st.container():
78
- st.header(position_full_str)
79
- df_pos = df[df["Position"] == position_abbr]
80
-
81
- grid_code_str = ""
82
- grid_code_str += get_time_slot_div(time_slots)
83
-
84
- tier_list = list(range(MIN_TIER, MAX_TIER + 1))
85
- slot_number = 0
86
- for tier_idx, tier in enumerate(tier_list):
87
- grid_code_str += get_tier_div(tier, tier_idx + 1)
88
- for time_slot in time_slots:
89
- df_tier_slot = df_pos[(df_pos["TimeSlotName"] == time_slot) & (df_pos["Tier"] == tier)]
90
- slot_number += 1
91
- grid_code_str += get_player_container(df_tier_slot, slot_number)
92
-
93
- components.html(
94
- f"""
95
- {get_local_style()}
96
- <div class="grid-container-{len(time_slots)}">
97
- {grid_code_str}
98
- </div>
99
- <br>
100
- <div class="grid-legend">Colors Legend:
101
- <div class="drop-player">Drop Player</div> |
102
- <div class="light-hold-player">Light Hold Player</div> |
103
- <div class="hold-player">Strong Hold Player</div>
104
- </div>
105
- """,
106
- height=1000,
107
- scrolling=True,
108
- )
109
-
110
-
111
- def get_page():
112
- page_title = "Maximum Roster Strategy"
113
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
114
- common_page_config()
115
- st.title(page_title)
116
-
117
- with st.expander(label="Instructions"):
118
- st.write(
119
- """
120
- To get started with MRS: https://solowfantasyfootball.wordpress.com/2023/09/07/maximum-roster-strategy-explained/
121
-
122
- Players are organized by game time slot, position, and tier.
123
-
124
- Pick up a player during their game's time slot for potential upside if particular circumstances are met.
125
-
126
- After the game, players will be colored by outcome: Drop (Red), Light Hold (Yellow), or Strong Hold (Green)."""
127
- )
128
- col_select, week_select = st.columns(2, gap="small")
129
- url_params = st.experimental_get_query_params()
130
- initial_position_index = 0
131
- if url_position := url_params.get("position"):
132
- selected_position = url_position[0]
133
- if selected_position in POSITION_OPTIONS:
134
- initial_position_index = POSITION_OPTIONS.index(selected_position)
135
-
136
- week_options = list(range(MAXIMUM_WEEK, MINIMUM_WEEK - 1, -1))
137
- initial_week_index = 0
138
- if url_week := url_params.get("week"):
139
- try:
140
- selected_week = int(url_week[0])
141
- except Exception:
142
- st.warning("Week parameter must be integer value", icon="⚠️")
143
- selected_week = MAXIMUM_WEEK
144
- if selected_week in week_options:
145
- initial_week_index = week_options.index(selected_week)
146
-
147
- with col_select:
148
- position = st.selectbox(label="Position", options=POSITION_OPTIONS, index=initial_position_index)
149
- with week_select:
150
- week = st.selectbox(label="Week", options=week_options, index=initial_week_index)
151
- url_params.update({"position": position, "week": week})
152
- st.experimental_set_query_params(**url_params)
153
- if st.experimental_get_query_params().get("refresh"):
154
- st.cache_data.clear()
155
- df_mrs, all_time_slots_df = load_data()
156
- df_mrs = df_mrs[df_mrs["Week"] == week]
157
- current_week_timeslots = (
158
- all_time_slots_df[all_time_slots_df["Week"] == week].sort_values("WeekTimeSlotIndex").TimeSlotName.tolist()
159
- )
160
-
161
- get_position_breakdown(df_mrs, position, POSITION_ABBR_FULL_NAME_MAP[position], current_week_timeslots)
162
-
163
-
164
- if __name__ == "__main__":
165
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/8_FTN_Charting.py DELETED
@@ -1,40 +0,0 @@
1
- import datetime
2
- import streamlit as st
3
-
4
- from config import DEFAULT_ICON
5
- from shared_page import common_page_config
6
-
7
- from queries.footballguys.constants import YEAR
8
- from queries.nflverse.github_data import get_ftn_charting, get_current_tables, SEASON
9
-
10
-
11
- def load_data():
12
- data = get_ftn_charting(YEAR)
13
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
14
- return data, data_load_time_str
15
-
16
-
17
- def get_page():
18
- page_title = f"FTN Charting - {YEAR}"
19
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
20
- common_page_config()
21
- st.title(page_title)
22
- if f"ftn_charting_ftn_charting_{SEASON}" not in get_current_tables():
23
- st.write("Data not loaded.")
24
- st.write("Check loaded data [here](./Load_Data)")
25
- return
26
- data, data_load_time_str = load_data()
27
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
28
-
29
- with st.container():
30
- filtered_data = data
31
- st.dataframe(
32
- filtered_data,
33
- hide_index=True,
34
- # height=35 * (len(filtered_data) + 1) + 12,
35
- use_container_width=False,
36
- )
37
-
38
-
39
- if __name__ == "__main__":
40
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/99_Keeper_Rules.py DELETED
@@ -1,37 +0,0 @@
1
- import streamlit as st
2
-
3
- from config import DEFAULT_ICON, LEAGUE_NAME
4
- from shared_page import common_page_config
5
-
6
-
7
- page_title = f"{LEAGUE_NAME} Keeper Rules"
8
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON)
9
- common_page_config()
10
- st.title(page_title)
11
- st.markdown(
12
- """
13
- ***Note: First LOFG keeper season was 2019***
14
-
15
- 1. Teams can keep up to 3 players from the prior season.
16
- - Note: changed from 2 to 3 beginning with 2022 season
17
- 2. Players are kept at the expense of a draft pick.
18
- - The round of that draft pick will depend on when the player was drafted in the prior season.
19
- 3. Players drafted in the 1st round of the prior season will not be eligible to keep.
20
- 4. Players drafted in rounds 2 and after can be kept at the expense of one higher round
21
- - Ex: player drafted in round 2 can be kept for your 1st round pick.
22
- 5. Players who were not drafted and were picked up during the season can be kept for 10th round picks (FA Keeper cost)
23
- - Changed beginning 2022 from 9th round
24
- 6. Post-Draft Acquired Keeper cost Minimum -
25
- - Players drafted by other teams have a keeper cost of minimum of round player drafted and FA Keeper Cost.
26
- - This rewards people who drafted the players, versus those who picked them up off waivers.
27
- 7. If you select 2 players with the same keeper cost, one of the players would count as one round higher.
28
- - Ex: Two players both have keeper cost of 10th round.
29
- - One of those players would instead be counted as your 9th round pick if both are kept.
30
- 8. Players can not be kept for more than 2 consecutive seasons
31
- - Ex: player drafted in 2019 in 6th round, 2020 for 5th round, and 2021 for 4th round - can't be kept in 2022
32
- - Exception to the above rule is that players originally drafted in 2nd round can only be kept for one season.
33
- 9. Players traded in a season are not subject to the FA Keeper cost minimum cost
34
- In other words, keeper rights transfer with the trade
35
-
36
- """
37
- )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/pages/9_Team_Formations.py DELETED
@@ -1,83 +0,0 @@
1
- import datetime
2
- import pandas as pd
3
- import streamlit as st
4
-
5
- from config import DEFAULT_ICON
6
- from shared_page import common_page_config
7
-
8
- from queries.footballguys.constants import YEAR
9
- from queries.nflverse.github_data import get_pbp_participation, get_current_tables, SEASON
10
-
11
-
12
- def load_data():
13
- data = get_pbp_participation(YEAR)
14
- teams_list = sorted(filter(None, data.possession_team.unique()))
15
- # position_list = data.position.unique()
16
- # weeks_list = sorted(data.week.unique())
17
- data_load_time_str = datetime.datetime.utcnow().strftime("%m/%d/%Y %I:%M %p")
18
- return data, teams_list, data_load_time_str
19
-
20
-
21
- def get_page():
22
- page_title = f"Team Formations - {YEAR}"
23
- st.set_page_config(page_title=page_title, page_icon=DEFAULT_ICON, layout="wide")
24
- common_page_config()
25
- st.title(page_title)
26
- if f"ftn_charting_ftn_charting_{SEASON}" not in get_current_tables():
27
- st.write("Data not loaded.")
28
- st.write("Check loaded data [here](./Load_Data)")
29
- return
30
- data, teams_list, data_load_time_str = load_data()
31
- st.write(f"Data loaded as of: {data_load_time_str} UTC")
32
- default_groups = [
33
- "down",
34
- "play_type",
35
- "offense_personnel",
36
- ]
37
- group_options = [
38
- "week",
39
- "down",
40
- "qtr",
41
- "ydstogo",
42
- "play_type",
43
- "pass_length",
44
- "pass_location",
45
- "possession_team",
46
- "offense_formation",
47
- "offense_personnel",
48
- "number_of_pass_rushers",
49
- "defenders_in_box",
50
- "defense_personnel",
51
- ]
52
- group_by_selected = st.multiselect("Group by:", group_options) or default_groups
53
- team_selected = st.selectbox("Team:", teams_list)
54
- week_selection = st.slider(
55
- "Filter Week Range:",
56
- min_value=data["week"].min(),
57
- max_value=data["week"].max(),
58
- value=(data["week"].min(), data["week"].max()),
59
- step=1,
60
- )
61
-
62
- with st.container():
63
- filtered_data = data[
64
- (data.possession_team == team_selected)
65
- & (data.play_type.isin(["pass", "run"]))
66
- & (data["week"].between(*week_selection))
67
- ]
68
-
69
- st.dataframe(
70
- pd.pivot_table(
71
- filtered_data,
72
- values="count_col",
73
- index=group_by_selected,
74
- columns="week",
75
- aggfunc={"count_col": "sum"},
76
- # margins=True,
77
- ),
78
- use_container_width=False,
79
- )
80
-
81
-
82
- if __name__ == "__main__":
83
- get_page()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/queries/footballguys/__init__.py DELETED
File without changes
src/queries/footballguys/constants.py DELETED
@@ -1,34 +0,0 @@
1
- from typing import List, Mapping
2
-
3
- # constants relevant to parsing from footballguys
4
-
5
- SNAP_PAGE_POSITON_ORDER: List[str] = [
6
- "QB",
7
- "RB",
8
- "WR",
9
- "TE",
10
- "DT",
11
- "DE",
12
- "ILB",
13
- "OLB",
14
- "CB",
15
- "S",
16
- ]
17
-
18
- POSITIONS_TO_OFFENSE_DEFENSE: Mapping[str, str] = {
19
- "QB": "OFF",
20
- "RB": "OFF",
21
- "WR": "OFF",
22
- "TE": "OFF",
23
- "DT": "DEF",
24
- "DE": "DEF",
25
- "ILB": "DEF",
26
- "OLB": "DEF",
27
- "S": "DEF",
28
- "CB": "DEF",
29
- }
30
-
31
-
32
- BASE_URL = "https://www.footballguys.com/stats"
33
-
34
- YEAR = 2023
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/queries/footballguys/helpers.py DELETED
@@ -1,130 +0,0 @@
1
- from io import StringIO
2
- import lxml.html
3
- import pandas as pd
4
- import requests
5
- from typing import List
6
- from queries.footballguys import constants as fbgc
7
-
8
-
9
- def url_to_pandas(url) -> List[pd.DataFrame]:
10
- page = requests.get(url)
11
- table = pd.read_html(StringIO(page.text.replace("<br>", "-")))
12
- return table
13
-
14
-
15
- def create_html_table_from_header_body(header_html_str: str, body_html_str: str):
16
- return f"""
17
- <table>
18
- {header_html_str}
19
- {body_html_str}
20
- </table>
21
- """
22
-
23
-
24
- def extract_snaps_to_pandas(url: str):
25
- root = lxml.html.document_fromstring(requests.get(url).text)
26
- table_element_list = root.xpath("""//*[@id="stats_snapcounts_data"]/div/table""")
27
- assert isinstance(table_element_list, list)
28
- table_element = table_element_list[0]
29
- assert isinstance(table_element, lxml.html.HtmlElement)
30
- table_child_list = table_element.getchildren()
31
- assert len(table_child_list) % 2 == 0 # check is even
32
- half_len = int(len(table_child_list) / 2)
33
- df_list = []
34
- for i in range(half_len):
35
- table_html = create_html_table_from_header_body(
36
- lxml.html.tostring(table_child_list[2 * i]), lxml.html.tostring(table_child_list[2 * i + 1])
37
- ).replace("\\n", "")
38
- df = pd.read_html(table_html)[0]
39
- # First column contains name and is initially labeled as each position, example "Quarterback"
40
- # Insert column at front called POS and fill with current first column label
41
- position_name = df.columns[0]
42
- df.insert(0, "POS", position_name)
43
- df.rename(columns={position_name: "name"}, inplace=True)
44
- df_list.append(df)
45
- return df_list
46
-
47
-
48
- def add_snap_off_def_column(team_snap_df: pd.DataFrame):
49
- off_def = team_snap_df["POS"].apply(lambda x: fbgc.POSITIONS_TO_OFFENSE_DEFENSE[x])
50
- team_snap_df.insert(0, "OFF/DEF", off_def)
51
-
52
-
53
- def add_snap_position_column(
54
- team_snap_df_list: List[pd.DataFrame],
55
- position_name_array: List[str] = fbgc.SNAP_PAGE_POSITON_ORDER,
56
- ):
57
- # blank player names between positions, so we can use cumsum
58
- # 8/22/23 - We are currently failing here because snap counts are incorrectly not split by position atm
59
- assert len(team_snap_df_list) == len(position_name_array)
60
- for pos_idx, pos_df in enumerate(team_snap_df_list):
61
- pos_df.insert(0, "POS", position_name_array[pos_idx])
62
-
63
-
64
- def set_multilevel_columns(df):
65
- new_cols = [tuple(x.split("-")) if "-" in x else (x, x) for x in df.columns]
66
- df.columns = pd.MultiIndex.from_tuples(new_cols)
67
-
68
-
69
- def parse_snaps(team_short_name: str, base_url: str = fbgc.BASE_URL, year: int = fbgc.YEAR) -> pd.DataFrame:
70
- print(f"Attempting to parse snaps for {team_short_name}")
71
- team_snap_df_list = parse_team_page(team_short_name, base_url, "snap-counts", year)
72
- team_snap_df = pd.concat(team_snap_df_list)
73
- # add_snap_off_def_column(team_snap_df)
74
- split_snap_count_percents(team_snap_df)
75
- team_snap_df.dropna(subset=["name"], inplace=True)
76
- # set_multilevel_columns(team_snap_df)
77
- return team_snap_df
78
-
79
-
80
- def add_targets_position(team_df: pd.DataFrame):
81
- # fill blanks up by reversing index, fill down, and re-reversing
82
- positions = team_df.name.apply(lambda x: x.replace(" Totals", "") if " Totals" in x else None)[::-1].ffill()[::-1]
83
- team_df.insert(0, "POS", positions)
84
-
85
-
86
- def parse_targets(team_short_name: str, base_url: str = fbgc.BASE_URL, year: int = fbgc.YEAR) -> pd.DataFrame:
87
- # snaps are index 2
88
- print(f"Attempting to parse targets for {team_short_name}")
89
- team_df = parse_team_page(team_short_name, base_url, "targets", year)[0]
90
- add_targets_position(team_df)
91
- return team_df[team_df.name.notna()]
92
-
93
-
94
- def parse_redzone(team_short_name: str, base_url: str = fbgc.BASE_URL, year: int = fbgc.YEAR) -> pd.DataFrame:
95
- # snaps are index 3
96
- print(f"Attempting to parse redzone for {team_short_name}")
97
- team_df = parse_team_page(team_short_name, base_url, "redzone", year)[0]
98
- add_targets_position(team_df)
99
- return team_df[team_df.name.notna()]
100
-
101
-
102
- def split_snap_count_percents(team_snap_df: pd.DataFrame):
103
- for week in range(1, 18):
104
- if f"Wk {week}" not in team_snap_df.columns:
105
- continue
106
- # if values are all NaN column will be dtype float 64 and should skip
107
- if team_snap_df[f"Wk {week}"].dtype == float:
108
- team_snap_df[f"{week}-count"] = 0
109
- team_snap_df[f"{week}-%"] = 0.0
110
- else:
111
- week_split = team_snap_df[f"Wk {week}"].astype(str).str.split("-")
112
- week_count = week_split.apply(lambda x: 0 if len(x) == 1 or x[0] == "" else int(x[0]))
113
- week_pct = week_split.apply(lambda x: 0.0 if len(x) == 1 else float(x[1].strip("%")) / 100.0)
114
- team_snap_df[f"{week}-count"] = week_count
115
- team_snap_df[f"{week}-%"] = week_pct
116
- team_snap_df.drop(columns=f"Wk {week}", inplace=True)
117
-
118
-
119
- def parse_team_page(
120
- team_short_name: str,
121
- base_url: str,
122
- stat_name: str,
123
- year: int,
124
- ) -> List[pd.DataFrame]:
125
- url = f"{base_url}/{stat_name}/teams?team={team_short_name}&year={year}"
126
- if stat_name == "snap-counts":
127
- all_tables = extract_snaps_to_pandas(url)
128
- else:
129
- all_tables = url_to_pandas(url)
130
- return all_tables
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/queries/footballguys/refresh.py DELETED
@@ -1,46 +0,0 @@
1
- from domain.teams import NFLTeam, ALL_TEAMS
2
- from queries.footballguys.helpers import parse_snaps, parse_targets, parse_redzone
3
- from typing import List, Callable, Optional
4
- import pandas as pd
5
-
6
-
7
- def add_team_name_columns(team_df: pd.DataFrame, team_short_name: str, team_name: str):
8
- team_df.insert(0, "TEAM", team_short_name)
9
- team_df.insert(1, "TEAM_NAME", team_name)
10
-
11
-
12
- def apply_intended_column_sorting(df: pd.DataFrame, first_columns: List[str]) -> pd.DataFrame:
13
- first_columns_in_df = [col for col in first_columns if col in df.columns]
14
- remaining_columns = [col for col in df.columns if col not in first_columns_in_df]
15
- return df[first_columns_in_df + remaining_columns]
16
-
17
-
18
- def get_all_teams_stat_type(
19
- all_teams_list: List[NFLTeam],
20
- parsing_function: Callable,
21
- store_key: str,
22
- intended_first_columns: Optional[List[str]] = None,
23
- ):
24
- team_df_list = []
25
- for team in all_teams_list:
26
- team_df = parsing_function(team.footballguys_short_name)
27
- add_team_name_columns(team_df, team.team_short_name, team.team_name)
28
- team_df_list.append(team_df)
29
- df = pd.concat(team_df_list)
30
- if intended_first_columns:
31
- df = apply_intended_column_sorting(df, intended_first_columns)
32
- print(f"footballguy {store_key} loaded")
33
- return df
34
-
35
-
36
- def request_stat(stat_name: str) -> pd.DataFrame:
37
- intended_col_sort = None
38
- if stat_name == "targets":
39
- parse_fxn = parse_targets
40
- intended_col_sort = ["TEAM", "TEAM_NAME", "POS", "name", "total"]
41
- elif stat_name == "snap-counts":
42
- parse_fxn = parse_snaps
43
- elif stat_name == "redzone":
44
- parse_fxn = parse_redzone
45
- intended_col_sort = ["TEAM", "TEAM_NAME", "POS", "name", "total"]
46
- return get_all_teams_stat_type(ALL_TEAMS, parse_fxn, stat_name, intended_col_sort)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/queries/nbcsports/player_news.py DELETED
@@ -1,52 +0,0 @@
1
- from bs4 import BeautifulSoup
2
- import datetime
3
- import pandas as pd
4
- import requests
5
- from typing import Mapping
6
-
7
- NEWS_URL = "https://www.nbcsports.com/fantasy/football/player-news"
8
-
9
-
10
- def find_soup_text_with_default(soup, element: str, find_search_map: Mapping[str, str]):
11
- find_result = soup.find(element, find_search_map)
12
- if not find_result:
13
- return ""
14
- return find_result.text.strip()
15
-
16
-
17
- def parse_player_div(player_div):
18
- return {
19
- "Date/Time": player_div.find("div", {"class": "PlayerNewsPost-date"}).get("data-date"),
20
- "Name": find_soup_text_with_default(player_div, "div", {"class": "PlayerNewsPost-name"}),
21
- "Team": find_soup_text_with_default(player_div, "span", {"class": "PlayerNewsPost-team-abbr"}).upper(),
22
- "Position": find_soup_text_with_default(player_div, "span", {"class": "PlayerNewsPost-position"}).title(),
23
- "Headline": find_soup_text_with_default(player_div, "div", {"class": "PlayerNewsPost-headline"}),
24
- "Analysis": find_soup_text_with_default(player_div, "div", {"class": "PlayerNewsPost-analysis"}),
25
- }
26
-
27
-
28
- def get_nfl_player_news(page_number: int = 1) -> pd.DataFrame:
29
- url = f"{NEWS_URL}?p={page_number}"
30
- request_page = requests.get(url)
31
- soup = BeautifulSoup(request_page.content)
32
- player_div_list = soup.find_all("div", {"class": "PlayerNewsPost"})
33
- if not player_div_list:
34
- return pd.DataFrame()
35
- parsed_player_list = [parse_player_div(d) for d in player_div_list]
36
- df = pd.DataFrame(parsed_player_list)
37
- df["Date/Time"] = pd.to_datetime(df["Date/Time"])
38
- return df
39
-
40
-
41
- def get_player_news_window_hours(hours: int = 1):
42
- end_date = datetime.datetime.now(datetime.timezone.utc) - datetime.timedelta(hours=hours)
43
- page = 1
44
- max_pages = 20
45
- date_reached = False
46
- df_list = []
47
- while page < max_pages and not date_reached:
48
- last_news = get_nfl_player_news(page)
49
- df_list.append(last_news)
50
- date_reached = min(last_news["Date/Time"]) < end_date
51
- page += 1
52
- return pd.concat(df_list)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/queries/nfl_teams/__init__.py DELETED
File without changes
src/queries/nfl_teams/practice_reports.py DELETED
@@ -1,123 +0,0 @@
1
- from bs4 import BeautifulSoup
2
- import datetime
3
- from multiprocessing import Pool
4
- import numpy as np
5
- import pandas as pd
6
- from pydantic import BaseModel, Field
7
- import requests
8
- from typing import Optional
9
- from urllib.parse import urljoin
10
-
11
- from domain.teams import ALL_TEAMS, NFLTeam
12
-
13
-
14
- MULTIPROCESSING_ENABLED = False
15
-
16
- PRACTICE_WEEK = {
17
- "Mon": 0,
18
- "Tue": 1,
19
- "Wed": 2,
20
- "Thu": 3,
21
- "Fri": 4,
22
- "Sat": 5,
23
- "Sun": 6,
24
- "Monday": 0,
25
- "Tuesday": 1,
26
- "Wednesday": 2,
27
- "Thursday": 3,
28
- "Friday": 4,
29
- "Saturday": 5,
30
- "Sunday": 6,
31
- }
32
-
33
-
34
- DAY_OF_WEEK_STRING_MAPPING = {
35
- "Monday": "Mon",
36
- "Tuesday": "Tue",
37
- "Wednesday": "Wed",
38
- "Thursday": "Thu",
39
- "Friday": "Fri",
40
- "Saturday": "Sat",
41
- "Sunday": "Sun",
42
- }
43
-
44
-
45
- WEEK_1_BEGIN_DATE = datetime.datetime(2023, 9, 4)
46
- CURRENT_DATE = datetime.datetime.now()
47
- CURRENT_WEEK = max(1, int(1 + (CURRENT_DATE - WEEK_1_BEGIN_DATE).days / 7))
48
- CURRENT_SEASON = 2023
49
-
50
-
51
- class PracticeReportRawRow(BaseModel):
52
- Team: str
53
- Player: str
54
- Position: str
55
- Injury: str
56
- Sun: Optional[str] = None
57
- Mon: Optional[str] = None
58
- Tue: Optional[str] = None
59
- Wed: Optional[str] = None
60
- Thu: Optional[str] = None
61
- Fri: Optional[str] = None
62
- Sat: Optional[str] = None
63
- game_status: str = Field(alias="Game Status")
64
-
65
- @classmethod
66
- def replace_nan(self, value) -> str:
67
- if isinstance(value, float):
68
- if np.isnan(value):
69
- return ""
70
- return value
71
-
72
- @classmethod
73
- def from_raw(cls, input_dict) -> "PracticeReportRawRow":
74
- return cls(**{DAY_OF_WEEK_STRING_MAPPING.get(k, k): cls.replace_nan(v) for k, v in input_dict.items()})
75
-
76
-
77
- def get_injury_report_dataframe(team: NFLTeam):
78
- injury_report_url = urljoin(team.injury_report_url, f"week/REG-{CURRENT_WEEK}")
79
- report_request = requests.get(injury_report_url)
80
- report_soup = BeautifulSoup(report_request.content)
81
- team_names_spans = report_soup.find_all("span", {"class": "nfl-o-injury-report__club-name"})
82
- assert team_names_spans
83
- team_names_str = [x.get_text() for x in team_names_spans]
84
- assert team_names_str[0] == team.team_full_name
85
- tables = report_soup.find_all("table")
86
- df_report = pd.read_html(str(tables))[0]
87
- return df_report
88
-
89
-
90
- def scrape_team_injury_report(team: NFLTeam) -> pd.DataFrame:
91
- print(f"Scraping Injury Report for: {team.team_full_name}")
92
- try:
93
- team_report = get_injury_report_dataframe(team)
94
- except Exception:
95
- print(f"Failed to scrape practice report for: {team.team_full_name}")
96
- return pd.DataFrame()
97
- validated_row_list = []
98
- for df_row_dict in team_report.to_dict("records"):
99
- row_to_add = df_row_dict
100
- row_to_add["Team"] = team.team_full_name
101
- validated_row_list.append(PracticeReportRawRow.from_raw(row_to_add))
102
- validated_df = pd.DataFrame([x.dict() for x in validated_row_list])
103
- # drop all na columns
104
- validated_df.dropna(axis=1, how="all", inplace=True)
105
- # replace day of week with practice day from 1-3
106
- day_idx = 1
107
- last_practice_day = None
108
- for col in validated_df.columns:
109
- if col in PRACTICE_WEEK:
110
- validated_df.rename(columns={col: str(day_idx)}, inplace=True)
111
- day_idx += 1
112
- last_practice_day = col
113
- validated_df["Last Practice Day"] = last_practice_day
114
- return validated_df
115
-
116
-
117
- def scrape_all_team_injury_report() -> pd.DataFrame:
118
- if MULTIPROCESSING_ENABLED:
119
- with Pool() as pool:
120
- team_df_list = pool.map(scrape_team_injury_report, ALL_TEAMS)
121
- else:
122
- team_df_list = [scrape_team_injury_report(team) for team in ALL_TEAMS]
123
- return pd.concat(team_df_list)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
src/shared_page.py CHANGED
@@ -1,7 +1,7 @@
1
  import os
2
  import streamlit as st
3
 
4
- from page_selector import remove_seasonal_pages
5
  from login_component import get_authorization_button
6
 
7
 
@@ -19,4 +19,3 @@ def local_css():
19
  def common_page_config():
20
  local_css()
21
  get_authorization_button()
22
- remove_seasonal_pages()
 
1
  import os
2
  import streamlit as st
3
 
4
+
5
  from login_component import get_authorization_button
6
 
7
 
 
19
  def common_page_config():
20
  local_css()
21
  get_authorization_button()
 
tests/contract/test_nbcsports_player_news.py DELETED
@@ -1,13 +0,0 @@
1
- import pytest
2
-
3
- from queries.nbcsports import player_news
4
-
5
-
6
- @pytest.mark.parametrize("page_number", [(1), (2)])
7
- def test_get_nfl_player_news(page_number: int):
8
- _ = player_news.get_nfl_player_news(page_number)
9
-
10
-
11
- @pytest.mark.parametrize("hours", [(1), (10)])
12
- def test_get_player_news_window_hours(hours: int):
13
- _ = player_news.get_player_news_window_hours(hours)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
tests/contract/test_nfl_teams_practice_reports.py DELETED
@@ -1,9 +0,0 @@
1
- import pytest
2
-
3
- from domain import teams
4
- from queries.nfl_teams import practice_reports
5
-
6
-
7
- @pytest.mark.parametrize("team", [(x) for x in teams.ALL_TEAMS])
8
- def test_scrape_team_injury_report(team):
9
- _ = practice_reports.scrape_team_injury_report(team)
 
 
 
 
 
 
 
 
 
 
tests/mocks/2023_keepers.csv DELETED
@@ -1,222 +0,0 @@
1
- ,player_id,name,is_keeper,headshot_url,position_type,eligible_positions,selected_position,team_key,team_name,manager,status,season,pick,round,team_key_draft,years_eligible,keeper_cost,eligible
2
- 0,25812,Kirk Cousins,False,https://s.yimg.com/iu/api/res/1.2/1ru7GVFJz3q2wjSqH_klXA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/25812.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,52.0,5.0,414.l.474186.t.6,2,4.0,True
3
- 1,32692,Justin Jefferson,True,https://s.yimg.com/iu/api/res/1.2/uKAl5.v0hNtF.Gofx7AY5w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/32692.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,148.0,13.0,414.l.474186.t.6,0,12.0,False
4
- 2,29399,Tyreek Hill,False,https://s.yimg.com/iu/api/res/1.2/IziJ.2wiZw0IpFOiD2kLsg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/29399.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,21.0,2.0,414.l.474186.t.6,2,1.0,True
5
- 3,30120,Mike Williams,True,https://s.yimg.com/iu/api/res/1.2/i9Vi4Ipm6kqfxD38LGUQeA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/30120.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,76.0,7.0,414.l.474186.t.6,1,6.0,True
6
- 4,30423,Austin Ekeler,False,https://s.yimg.com/iu/api/res/1.2/Wsn35gKIUHOaQEseGWkfRw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/30423.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,4.0,1.0,414.l.474186.t.6,2,0.0,False
7
- 5,31906,Devin Singletary,False,https://s.yimg.com/iu/api/res/1.2/NBqz6HmEaIx19gOlB39KPw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08152023/31906.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,100.0,9.0,414.l.474186.t.6,2,8.0,True
8
- 6,30259,George Kittle,False,https://s.yimg.com/iu/api/res/1.2/OaU1XRgACHFYep3esYgmSw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/30259.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,45.0,4.0,414.l.474186.t.6,2,3.0,True
9
- 7,33514,Chuba Hubbard,False,https://s.yimg.com/iu/api/res/1.2/Dbzue7q8.gz13D7Jx.oddQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08232022/33514.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,193.0,17.0,414.l.474186.t.9,2,10.0,True
10
- 8,32010,Gardner Minshew,False,https://s.yimg.com/iu/api/res/1.2/W5BQWsS0IkvLsIXQTVziuQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/32010.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,,,,2,10.0,True
11
- 9,34007,George Pickens,False,https://s.yimg.com/iu/api/res/1.2/2.Q7wW_ectu5_akSvvUDvA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34007.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,124.0,11.0,414.l.474186.t.6,2,10.0,True
12
- 10,32723,Jalen Hurts,True,https://s.yimg.com/iu/api/res/1.2/ZdHzqdvnato.MAwHy9jiWQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/32723.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,93.0,8.0,414.l.474186.t.6,0,7.0,False
13
- 11,33971,Jahan Dotson,False,https://s.yimg.com/iu/api/res/1.2/rY7UBr8dJhyBD2zKeDnkAQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/33971.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,172.0,15.0,414.l.474186.t.6,2,14.0,True
14
- 12,32719,Chase Claypool,False,https://s.yimg.com/iu/api/res/1.2/GDmycY7ed0Qgt7AIyKjswg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/32719.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,117.0,10.0,414.l.474186.t.6,2,9.0,True
15
- 13,33408,Kadarius Toney,False,https://s.yimg.com/iu/api/res/1.2/YgPRacRoiUOxNMcGvJ1qnw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08152023/33408.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,130.0,11.0,414.l.474186.t.7,2,10.0,True
16
- 14,31928,Dawson Knox,False,https://s.yimg.com/iu/api/res/1.2/WJptQ610wbYZVND2GLJ1iQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08162022/31928.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,89.0,8.0,414.l.474186.t.1,2,7.0,True
17
- 15,27540,Odell Beckham Jr.,False,https://s.yimg.com/iu/api/res/1.2/oIT1EIDlFGEwA81VkFcX7A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/02162023/27540.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,,,,2,10.0,True
18
- 16,31137,Daniel Carlson,False,https://s.yimg.com/iu/api/res/1.2/60tYJJYqBaWMBgRufxtW2A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/31137.png,K,['K'],K,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,196.0,17.0,414.l.474186.t.6,2,16.0,True
19
- 17,100017,New England,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/nwe.gif,DT,['DEF'],DEF,414.l.474186.t.6,Just Enough Cooks,Gabe,,2022,208.0,18.0,414.l.474186.t.11,2,10.0,True
20
- 18,32671,Joe Burrow,False,https://s.yimg.com/iu/api/res/1.2/QJXYvZ8pWkDD6JymTnrKBw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/32671.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,15.0,2.0,414.l.474186.t.7,2,1.0,True
21
- 19,27581,Davante Adams,False,https://s.yimg.com/iu/api/res/1.2/UTwCcrglF9.BGBwncQo1Qg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08142023/27581.1.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,10.0,1.0,414.l.474186.t.7,2,0.0,False
22
- 20,31883,A.J. Brown,True,https://s.yimg.com/iu/api/res/1.2/n1WlNUDEwJAfqfgp0shFNw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/31883.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,63.0,6.0,414.l.474186.t.7,0,5.0,False
23
- 21,31268,Allen Lazard,False,https://s.yimg.com/iu/api/res/1.2/MHhzpDypkk5FcSkgaIwydw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08022023/31268.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,82.0,7.0,414.l.474186.t.7,2,6.0,True
24
- 22,30117,Leonard Fournette,False,https://s.yimg.com/iu/api/res/1.2/YKNFujBNRe_snft4cpYzyA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/30117.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.7,Short Stafford,Adam Bush,NA,2022,34.0,3.0,414.l.474186.t.7,2,2.0,True
25
- 23,34357,Zonovan Knight,False,https://s.yimg.com/iu/api/res/1.2/th5obr_yU_FnvBc.oRysIQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34357.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,,,,2,10.0,True
26
- 24,31019,Dallas Goedert,True,https://s.yimg.com/iu/api/res/1.2/2EigEb4xahJnP3QtYDZg2w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/31019.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,106.0,9.0,414.l.474186.t.7,1,8.0,True
27
- 25,33996,Kenneth Walker III,False,https://s.yimg.com/iu/api/res/1.2/P3hgQ_501q_FSeopp00fXQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07252023/33996.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,111.0,10.0,414.l.474186.t.7,2,9.0,True
28
- 26,34030,Desmond Ridder,False,https://s.yimg.com/iu/api/res/1.2/DUrt_8tP5WTT_gHETdjCzg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08192022/34030.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,188.0,16.0,414.l.474186.t.3,2,10.0,True
29
- 27,24060,Colt McCoy,False,https://s.yimg.com/iu/api/res/1.2/ad_RXu.DQLICW71zcK05SQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/24060.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,Q,2022,,,,2,10.0,True
30
- 28,33989,Christian Watson,False,https://s.yimg.com/iu/api/res/1.2/6IIpLPG5eq.B8RZTCtwmhQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/33989.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,183.0,16.0,414.l.474186.t.7,2,15.0,True
31
- 29,29360,Demarcus Robinson,False,https://s.yimg.com/iu/api/res/1.2/M2p6MNVcinIE1ybyAMI5yw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/11282022/29360.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,Q,2022,,,,2,10.0,True
32
- 30,33443,Pat Freiermuth,False,https://s.yimg.com/iu/api/res/1.2/8K1q_4oL5zFCQOAUbcU_TQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/33443.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,Q,2022,160.0,14.0,414.l.474186.t.11,2,10.0,True
33
- 31,30153,Curtis Samuel,False,https://s.yimg.com/iu/api/res/1.2/3RkjwLTDVeSKnGZAIaPL0Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/30153.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,,,,2,10.0,True
34
- 32,32846,K.J. Osborn,False,https://s.yimg.com/iu/api/res/1.2/FHiM_yRbyAmJAkQwfopEDQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/32846.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,215.0,18.0,414.l.474186.t.10,2,10.0,True
35
- 33,30426,Younghoe Koo,False,https://s.yimg.com/iu/api/res/1.2/5SBc_xWFvSQDka.GZA77pw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08192022/30426.png,K,['K'],K,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,201.0,17.0,414.l.474186.t.11,2,10.0,True
36
- 34,100021,Philadelphia,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/phi.gif,DT,['DEF'],DEF,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,202.0,17.0,414.l.474186.t.7,2,16.0,True
37
- 35,100019,New York,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/nyg_2.gif,DT,['DEF'],BN,414.l.474186.t.7,Short Stafford,Adam Bush,,2022,,,,2,10.0,True
38
- 36,33991,Breece Hall,False,https://s.yimg.com/iu/api/res/1.2/fknRjJHFW3aHaUGO8ssHZg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33991.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",IR,414.l.474186.t.7,Short Stafford,Adam Bush,Q,2022,39.0,4.0,414.l.474186.t.7,2,3.0,True
39
- 37,30123,Patrick Mahomes,False,https://s.yimg.com/iu/api/res/1.2/uGaZr6pMT6iteP6VNUutXA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/30123.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.1,Solow Red Cups,Jon,Q,2022,8.0,1.0,414.l.474186.t.1,2,0.0,False
40
- 38,31896,DK Metcalf,False,https://s.yimg.com/iu/api/res/1.2/fQ3vz6SwKcRb0sOGr6xjUA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07252023/31896.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.1,Solow Red Cups,Jon,,2022,41.0,4.0,414.l.474186.t.1,2,3.0,True
41
- 39,33500,Amon-Ra St. Brown,True,https://s.yimg.com/iu/api/res/1.2/znSCRKLz1GvciatCpJ40Hw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/33500.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.1,Solow Red Cups,Jon,,2022,200.0,17.0,414.l.474186.t.1,1,16.0,True
42
- 40,32523,Greg Dortch,False,https://s.yimg.com/iu/api/res/1.2/1n5zauQsXxaPrKLMTsOFlw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/32523.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.1,Solow Red Cups,Jon,,2022,,,,2,10.0,True
43
- 41,30972,Saquon Barkley,False,https://s.yimg.com/iu/api/res/1.2/mfHTfkJ107RvBncwqjnr9A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09102022/30972.1.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.1,Solow Red Cups,Jon,,2022,17.0,2.0,414.l.474186.t.1,2,1.0,True
44
- 42,33508,Rhamondre Stevenson,False,https://s.yimg.com/iu/api/res/1.2/y3pOEJ5ze52.TwQwLfzJUw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/33508.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.1,Solow Red Cups,Jon,,2022,56.0,5.0,414.l.474186.t.1,2,4.0,True
45
- 43,31127,Tyler Conklin,False,https://s.yimg.com/iu/api/res/1.2/4melcS_WZ1rv3aEFcKLvkw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/31127.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.1,Solow Red Cups,Jon,,2022,,,,2,10.0,True
46
- 44,33413,Travis Etienne Jr.,True,https://s.yimg.com/iu/api/res/1.2/D1RbhndjK1UiNP_iBg119g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33413.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.1,Solow Red Cups,Jon,,2022,113.0,10.0,414.l.474186.t.1,1,9.0,True
47
- 45,30977,Josh Allen,True,https://s.yimg.com/iu/api/res/1.2/2QJbc1u1X6VJqFGDiBcSHw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08162022/30977.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.1,Solow Red Cups,Jon,,2022,32.0,3.0,414.l.474186.t.1,0,2.0,False
48
- 46,31857,Marquise Brown,False,https://s.yimg.com/iu/api/res/1.2/.CMTa_qhHj5x9VgqxEceSg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/31857.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,65.0,6.0,414.l.474186.t.1,2,5.0,True
49
- 47,34047,Rachaad White,False,https://s.yimg.com/iu/api/res/1.2/WwOHaEZZDPASCr3MR7iLEw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/34047.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,128.0,11.0,414.l.474186.t.1,2,10.0,True
50
- 48,33975,Kenny Pickett,False,https://s.yimg.com/iu/api/res/1.2/4FNm5KnyTOOqgi8IPlu2yg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33975.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,152.0,13.0,414.l.474186.t.1,2,12.0,True
51
- 49,30199,Kareem Hunt,False,https://s.yimg.com/iu/api/res/1.2/qImyalciOvrIvq611mTuxQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09132022/30199.1.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,NA,2022,72.0,6.0,414.l.474186.t.1,2,5.0,True
52
- 50,33538,Kenneth Gainwell,False,https://s.yimg.com/iu/api/res/1.2/Qa8DZYmDuoB9.VvFRQ6bBA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/33538.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,137.0,12.0,414.l.474186.t.1,2,11.0,True
53
- 51,32877,Isaiah Hodgins,False,https://s.yimg.com/iu/api/res/1.2/_20CSLAepNKXOc.ELTKcpg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/11142022/32877.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,,,,2,10.0,True
54
- 52,34079,Isaiah Spiller,False,https://s.yimg.com/iu/api/res/1.2/UtIYVmtNsvlANKEF2kwS.A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34079.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.1,Solow Red Cups,Jon,,2022,209.0,18.0,414.l.474186.t.1,2,17.0,True
55
- 53,9526,Graham Gano,False,https://s.yimg.com/iu/api/res/1.2/7_9bZ4Hysr0w4YsNg8rUOg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09102022/9526.1.png,K,['K'],K,414.l.474186.t.1,Solow Red Cups,Jon,,2022,,,,2,10.0,True
56
- 54,100012,Kansas City,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/kan.gif,DT,['DEF'],DEF,414.l.474186.t.1,Solow Red Cups,Jon,,2022,,,,2,10.0,True
57
- 55,33998,Wan'Dale Robinson,False,https://s.yimg.com/iu/api/res/1.2/0Z.sjWpUZoE4iq.6_wPWzA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33998.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",IR,414.l.474186.t.1,Solow Red Cups,Jon,Q,2022,161.0,14.0,414.l.474186.t.1,2,13.0,True
58
- 56,33399,Justin Fields,True,https://s.yimg.com/iu/api/res/1.2/bBjs6pBZ9oDYeFwr4OeCiA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08032022/33399.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.2,Gold Standard,Daniel,,2022,86.0,8.0,414.l.474186.t.2,1,7.0,True
59
- 57,28534,Stefon Diggs,True,https://s.yimg.com/iu/api/res/1.2/80tJkiyYc0vrrvUjfh2auw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/10012020/28534.1.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.2,Gold Standard,Daniel,,2022,35.0,3.0,414.l.474186.t.2,0,2.0,False
60
- 58,33398,DeVonta Smith,False,https://s.yimg.com/iu/api/res/1.2/6hdcVBZqvse4ZSmDUfFEdQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/33398.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.2,Gold Standard,Daniel,,2022,83.0,7.0,414.l.474186.t.2,2,6.0,True
61
- 59,33965,Garrett Wilson,False,https://s.yimg.com/iu/api/res/1.2/VSzU4ioKKF77t7yr5uQLNg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33965.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.2,Gold Standard,Daniel,,2022,206.0,18.0,414.l.474186.t.2,2,17.0,True
62
- 60,32732,AJ Dillon,True,https://s.yimg.com/iu/api/res/1.2/Fuzt08n6yShzPhmZk3dGPQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/32732.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.2,Gold Standard,Daniel,,2022,62.0,6.0,414.l.474186.t.2,1,5.0,True
63
- 61,30202,D'Onta Foreman,False,https://s.yimg.com/iu/api/res/1.2/xwIHvz1F6dEQPoWawE5Vrg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/30202.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.2,Gold Standard,Daniel,,2022,198.0,17.0,414.l.474186.t.5,2,10.0,True
64
- 62,30136,Evan Engram,False,https://s.yimg.com/iu/api/res/1.2/o6Ww.Q9ytv48B9LNAHMv8A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/30136.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
65
- 63,34207,Isiah Pacheco,False,https://s.yimg.com/iu/api/res/1.2/MLVZ02I_Cn_qG5u2gcG3iw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34207.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.2,Gold Standard,Daniel,Q,2022,134.0,12.0,414.l.474186.t.2,2,11.0,True
66
- 64,27560,Teddy Bridgewater,False,https://s.yimg.com/iu/api/res/1.2/V4npHYJxJlm0HzNwXMTnag--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/27560.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
67
- 65,32756,Zack Moss,False,https://s.yimg.com/iu/api/res/1.2/WxwF7udgeEEeuQ0Wdmo85w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/32756.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
68
- 66,30295,Aaron Jones,False,https://s.yimg.com/iu/api/res/1.2/ez8dGQIh4snWNJ.0GsSe3Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/30295.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,14.0,2.0,414.l.474186.t.2,2,1.0,True
69
- 67,26804,Latavius Murray,False,https://s.yimg.com/iu/api/res/1.2/QbmUSNHnwM45rtIqakYvfQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08012023/26804.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
70
- 68,31107,Dalton Schultz,False,https://s.yimg.com/iu/api/res/1.2/UKeiRn.vKvlPKMjjXmQAwQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08152023/31107.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,59.0,5.0,414.l.474186.t.2,2,4.0,True
71
- 69,30285,Isaiah McKenzie,False,https://s.yimg.com/iu/api/res/1.2/ElcW35CLgX7r2P_CB_7yJw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08162022/30285.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,110.0,10.0,414.l.474186.t.2,2,9.0,True
72
- 70,30266,Jake Elliott,False,https://s.yimg.com/iu/api/res/1.2/cJxU0FO_kfryoXKrAKY9iA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/30266.png,K,['K'],K,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
73
- 71,100028,Washington,False,https://s.yimg.com/cv/apiv2/default/nfl/20200909/50x50/cr/washington.gif,DT,['DEF'],DEF,414.l.474186.t.2,Gold Standard,Daniel,,2022,,,,2,10.0,True
74
- 72,100002,Buffalo,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/buf.gif,DT,['DEF'],BN,414.l.474186.t.2,Gold Standard,Daniel,,2022,107.0,9.0,414.l.474186.t.2,2,8.0,True
75
- 73,32675,Tua Tagovailoa,True,https://s.yimg.com/iu/api/res/1.2/S0TI9tF0kmgmb5qpOEbV8w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/32675.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.10,The Jenbots,Jen,,2022,98.0,9.0,414.l.474186.t.10,1,8.0,True
76
- 74,27277,Adam Thielen,False,https://s.yimg.com/iu/api/res/1.2/eB_EQ1lpxyq3QGcTGyk1mQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/27277.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.10,The Jenbots,Jen,,2022,74.0,7.0,414.l.474186.t.10,2,6.0,True
77
- 75,33394,Jaylen Waddle,True,https://s.yimg.com/iu/api/res/1.2/H7eEPYlww.bcZ9r9gY8fPg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/33394.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.10,The Jenbots,Jen,,2022,122.0,11.0,414.l.474186.t.10,1,10.0,True
78
- 76,30994,DJ Moore,False,https://s.yimg.com/iu/api/res/1.2/3K7Sh.Q0fLpdyh7g2QD.nA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/30994.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.10,The Jenbots,Jen,,2022,47.0,4.0,414.l.474186.t.10,2,3.0,True
79
- 77,31005,Nick Chubb,False,https://s.yimg.com/iu/api/res/1.2/btOicZxjBcHhRuOC9nIV1g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09132022/31005.1.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.10,The Jenbots,Jen,,2022,23.0,2.0,414.l.474186.t.10,2,1.0,True
80
- 78,29238,Ezekiel Elliott,False,https://s.yimg.com/iu/api/res/1.2/DUODUN2PLd2SHxwOt85rLg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092022/29238.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.10,The Jenbots,Jen,,2022,26.0,3.0,414.l.474186.t.10,2,2.0,True
81
- 79,34036,Greg Dulcich,False,https://s.yimg.com/iu/api/res/1.2/BpDTU3QlurqLMDIerAVnnQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08262022/34036.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.10,The Jenbots,Jen,Q,2022,,,,2,10.0,True
82
- 80,31905,David Montgomery,False,https://s.yimg.com/iu/api/res/1.2/wRdrI7HtYiZfB8U243TfhQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08112023/31905.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.10,The Jenbots,Jen,,2022,50.0,5.0,414.l.474186.t.10,2,4.0,True
83
- 81,29235,Jared Goff,False,https://s.yimg.com/iu/api/res/1.2/Ho6Q1LTikrPbhrhWo2bwCQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/29235.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.10,The Jenbots,Jen,,2022,71.0,6.0,414.l.474186.t.10,2,5.0,True
84
- 82,29341,Chris Moore,False,https://s.yimg.com/iu/api/res/1.2/UDZSy6kjfiMqc.GHwYV9WQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/29341.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,,,,2,10.0,True
85
- 83,30247,Jamaal Williams,False,https://s.yimg.com/iu/api/res/1.2/NIDjtpLVqfsxwMAUB.yA9Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/30247.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,143.0,12.0,414.l.474186.t.10,2,11.0,True
86
- 84,30995,Hayden Hurst,False,https://s.yimg.com/iu/api/res/1.2/Rdja2nigOEqsGZjx6nNDtw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/30995.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,,,,2,10.0,True
87
- 85,24822,Andy Dalton,False,https://s.yimg.com/iu/api/res/1.2/Ohoq1e_3muN0RKhB63.mVw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/24822.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,,,,2,10.0,True
88
- 86,34008,Alec Pierce,False,https://s.yimg.com/iu/api/res/1.2/8OKDszvwdUD9QqJoN5h6DA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09012022/34008.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,,,,2,10.0,True
89
- 87,33477,Nico Collins,False,https://s.yimg.com/iu/api/res/1.2/e6yVOlCA1IHCbRbTinF_5A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/33477.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,Q,2022,146.0,13.0,414.l.474186.t.10,2,12.0,True
90
- 88,33973,Treylon Burks,False,https://s.yimg.com/iu/api/res/1.2/HY6f8mRVR6_LrFEFNrwfFA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/33973.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.10,The Jenbots,Jen,,2022,136.0,12.0,414.l.474186.t.11,2,10.0,True
91
- 89,34344,Cameron Dicker,False,https://s.yimg.com/iu/api/res/1.2/XAI1iHGCrUs2Y71Z4dZOAA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08112023/34344.png,K,['K'],K,414.l.474186.t.10,The Jenbots,Jen,,2022,,,,2,10.0,True
92
- 90,100007,Denver,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/den.gif,DT,['DEF'],DEF,414.l.474186.t.10,The Jenbots,Jen,,2022,170.0,15.0,414.l.474186.t.10,2,14.0,True
93
- 91,33637,Ben Skowronek,False,https://s.yimg.com/iu/api/res/1.2/uLa2iCk.CU0BqrQxRABn7g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/33637.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",IR,414.l.474186.t.10,The Jenbots,Jen,Q,2022,,,,2,10.0,True
94
- 92,29369,Dak Prescott,False,https://s.yimg.com/iu/api/res/1.2/KE1Rw3r7nA8anql98tZI4Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092022/29369.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,20.0,2.0,414.l.474186.t.3,2,1.0,True
95
- 93,30197,Chris Godwin,False,https://s.yimg.com/iu/api/res/1.2/roNVzlSNZyCVTP_YD2gH.Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/30197.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,68.0,6.0,414.l.474186.t.3,2,5.0,True
96
- 94,32798,Gabe Davis,False,https://s.yimg.com/iu/api/res/1.2/FpnVozvf7BEniT.DSR1bbg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08162022/32798.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,29.0,3.0,414.l.474186.t.3,2,2.0,True
97
- 95,34659,Rashid Shaheed,False,https://s.yimg.com/iu/api/res/1.2/Yv.lEisn6gZ.6d9gJUFRhg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/34659.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
98
- 96,30154,Dalvin Cook,False,https://s.yimg.com/iu/api/res/1.2/PEteLdlAzix1arTWEMNdqQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/30154.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.3,Don’t Fear the Keeper,David,Q,2022,5.0,1.0,414.l.474186.t.3,2,0.0,False
99
- 97,26652,Cordarrelle Patterson,True,https://s.yimg.com/iu/api/res/1.2/iGQ1kha0acy.9HNIc2OXiw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08192022/26652.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,101.0,9.0,414.l.474186.t.3,1,8.0,True
100
- 98,29269,Hunter Henry,False,https://s.yimg.com/iu/api/res/1.2/NEm1DAWA.yuFGnX1llY2CA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/29269.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,167.0,14.0,414.l.474186.t.10,2,10.0,True
101
- 99,31051,Michael Gallup,True,https://s.yimg.com/iu/api/res/1.2/rc2qooGsh7s6eFSb2i4UIg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092022/31051.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.3,Don’t Fear the Keeper,David,Q,2022,116.0,10.0,414.l.474186.t.3,1,9.0,True
102
- 100,33389,Trevor Lawrence,False,https://s.yimg.com/iu/api/res/1.2/dTvmt7jY2XE8d0K6jMnytQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33389.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,44.0,4.0,414.l.474186.t.3,2,3.0,True
103
- 101,32736,Antonio Gibson,False,https://s.yimg.com/iu/api/res/1.2/6ofK.flGUG.stOTsHIfLjQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/32736.1.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,Q,2022,53.0,5.0,414.l.474186.t.3,2,4.0,True
104
- 102,32003,Darius Slayton,False,https://s.yimg.com/iu/api/res/1.2/E8si81KuaPrD2lFQ0GtLbw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09102022/32003.1.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
105
- 103,28839,Taylor Heinicke,False,https://s.yimg.com/iu/api/res/1.2/89aG76v4MRKpCk2hfNizJw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/28839.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
106
- 104,31934,Alexander Mattison,False,https://s.yimg.com/iu/api/res/1.2/4Td_gb.cVkIChxsrHAqvjA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/31934.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,125.0,11.0,414.l.474186.t.3,2,10.0,True
107
- 105,33113,Juwan Johnson,False,https://s.yimg.com/iu/api/res/1.2/_eJHA9kCwXPo6vNRfEt2sQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/33113.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
108
- 106,30973,Sam Darnold,False,https://s.yimg.com/iu/api/res/1.2/IIsm16mUSjOkQICx7Duc8w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07262023/30973.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
109
- 107,29236,Carson Wentz,False,https://s.yimg.com/iu/api/res/1.2/CZ4byGFTeTX_PjRU9.kRuQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/29236.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.3,Don’t Fear the Keeper,David,NA,2022,149.0,13.0,414.l.474186.t.3,2,12.0,True
110
- 108,8432,Nick Folk,False,https://s.yimg.com/iu/api/res/1.2/F0y5frwLiZA3eW7iKP_jMw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/8432.png,K,['K'],K,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,,,,2,10.0,True
111
- 109,100027,Tampa Bay,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/tam.gif,DT,['DEF'],DEF,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,140.0,12.0,414.l.474186.t.3,2,11.0,True
112
- 110,33437,Rondale Moore,False,https://s.yimg.com/iu/api/res/1.2/yx6mu2I6XLuhhF0bScblZA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/33437.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",IR,414.l.474186.t.3,Don’t Fear the Keeper,David,,2022,164.0,14.0,414.l.474186.t.3,2,13.0,True
113
- 111,7200,Aaron Rodgers,False,https://s.yimg.com/iu/api/res/1.2/wBl5RxV59_1mMQkQHhlz_A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08022023/7200.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.11,Fired on my day off,Cobi,,2022,33.0,3.0,414.l.474186.t.11,2,2.0,True
114
- 112,32687,CeeDee Lamb,True,https://s.yimg.com/iu/api/res/1.2/AaMdFg_1O0IbpNi3gFRxGg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092022/32687.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.11,Fired on my day off,Cobi,,2022,81.0,7.0,414.l.474186.t.11,0,6.0,False
115
- 113,32695,Brandon Aiyuk,True,https://s.yimg.com/iu/api/res/1.2/mLlExLggroKYPjOXnGp50A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/32695.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.11,Fired on my day off,Cobi,,2022,88.0,8.0,414.l.474186.t.11,0,7.0,False
116
- 114,29288,Tyler Boyd,False,https://s.yimg.com/iu/api/res/1.2/8eGzZ4Z.xXR0iPQotLXLRQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/29288.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.11,Fired on my day off,Cobi,Q,2022,129.0,11.0,414.l.474186.t.11,2,10.0,True
117
- 115,30218,James Conner,True,https://s.yimg.com/iu/api/res/1.2/3XWaWcJhci_WmQzjkaJk2w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/30218.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.11,Fired on my day off,Cobi,,2022,64.0,6.0,414.l.474186.t.11,1,5.0,True
118
- 116,32722,Cam Akers,True,https://s.yimg.com/iu/api/res/1.2/yt8Azi2B44fcaSIY45M3WQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/32722.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.11,Fired on my day off,Cobi,,2022,118.0,10.0,414.l.474186.t.8,1,9.0,True
119
- 117,32713,Cole Kmet,False,https://s.yimg.com/iu/api/res/1.2/5OVkUh_qhJlTyp6RY6xXXQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08032022/32713.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.11,Fired on my day off,Cobi,,2022,95.0,8.0,414.l.474186.t.10,2,7.0,True
120
- 118,33412,Najee Harris,False,https://s.yimg.com/iu/api/res/1.2/OR95VsfQ4o4K6THKBgp5yA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/33412.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.11,Fired on my day off,Cobi,,2022,9.0,1.0,414.l.474186.t.11,2,0.0,False
121
- 119,25785,Russell Wilson,False,https://s.yimg.com/iu/api/res/1.2/FAeFxNvgxIInhiyZhYp6FQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08262022/25785.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.11,Fired on my day off,Cobi,Q,2022,16.0,2.0,414.l.474186.t.11,2,1.0,True
122
- 120,34107,Tyler Allgeier,False,https://s.yimg.com/iu/api/res/1.2/5tRMs86CGOTiPIS1sSl.qw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08192022/34107.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,171.0,15.0,414.l.474186.t.8,2,10.0,True
123
- 121,31852,Noah Fant,False,https://s.yimg.com/iu/api/res/1.2/DjDtCvS.YcRZ1AIzoA8OAw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/31852.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,,,,2,10.0,True
124
- 122,28654,Raheem Mostert,False,https://s.yimg.com/iu/api/res/1.2/5B8rSiAkQu_C.T1FzwOuYQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/10132022/28654.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,112.0,10.0,414.l.474186.t.11,2,9.0,True
125
- 123,33422,Elijah Moore,True,https://s.yimg.com/iu/api/res/1.2/Vkh0utH3qjiaFHtrNHSQRQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08022023/33422.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,114.0,10.0,414.l.474186.t.4,1,9.0,True
126
- 124,30182,Cooper Kupp,False,https://s.yimg.com/iu/api/res/1.2/r4cot0junNdG6BI.2PKXDA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/30182.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,Q,2022,2.0,1.0,414.l.474186.t.10,2,0.0,False
127
- 125,33391,Trey Lance,True,https://s.yimg.com/iu/api/res/1.2/H0GY3TXYTlkKJdLioJmvig--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/33391.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,91.0,8.0,414.l.474186.t.5,1,7.0,True
128
- 126,31977,Matt Gay,False,https://s.yimg.com/iu/api/res/1.2/lHuyp4cfi0SGZO3XhtX5PA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/31977.png,K,['K'],K,414.l.474186.t.11,Fired on my day off,Cobi,,2022,182.0,16.0,414.l.474186.t.2,2,10.0,True
129
- 127,100030,Jacksonville,False,https://s.yimg.com/xe/ipt/50x50w.3.gif,DT,['DEF'],DEF,414.l.474186.t.11,Fired on my day off,Cobi,,2022,,,,2,10.0,True
130
- 128,100024,Los Angeles,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/sdg3.jpg,DT,['DEF'],BN,414.l.474186.t.11,Fired on my day off,Cobi,,2022,211.0,18.0,414.l.474186.t.5,2,10.0,True
131
- 129,31833,Kyler Murray,False,https://s.yimg.com/iu/api/res/1.2/.c7dDweSvYsX9He5BCXNBw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/31833.png,O,"['QB', 'Q/W/R/T']",IR,414.l.474186.t.11,Fired on my day off,Cobi,Q,2022,11.0,1.0,414.l.474186.t.2,2,0.0,False
132
- 130,34218,Brock Purdy,False,https://s.yimg.com/iu/api/res/1.2/g0DerZ8KoS3DfFhcmgN6eA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/34218.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.5,Only Bad Juju Here,Will,Q,2022,,,,2,10.0,True
133
- 131,30175,JuJu Smith-Schuster,False,https://s.yimg.com/iu/api/res/1.2/VkzzBWy2DIUaQe_tV7U4vw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/30175.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,54.0,5.0,414.l.474186.t.5,2,4.0,True
134
- 132,33393,Ja'Marr Chase,True,https://s.yimg.com/iu/api/res/1.2/BW26kQyt4fyE_Jh6VoLb_g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/33393.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,43.0,4.0,414.l.474186.t.5,1,3.0,True
135
- 133,32704,Michael Pittman Jr.,True,https://s.yimg.com/iu/api/res/1.2/NraGNpZU47CL52KvePBgBQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09012022/32704.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,115.0,10.0,414.l.474186.t.5,1,9.0,True
136
- 134,27624,Jerick McKinnon,False,https://s.yimg.com/iu/api/res/1.2/v.6YTAtt5Bx_r8IsbuF4Gw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/27624.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,,,,2,10.0,True
137
- 135,30161,Joe Mixon,False,https://s.yimg.com/iu/api/res/1.2/UmC_omZu1fTvyauPzw.TiA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/30161.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,6.0,1.0,414.l.474186.t.5,2,0.0,False
138
- 136,26686,Travis Kelce,False,https://s.yimg.com/iu/api/res/1.2/ROLrLEfO0ysGN.bsgSza3Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/26686.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,19.0,2.0,414.l.474186.t.5,2,1.0,True
139
- 137,32725,J.K. Dobbins,True,https://s.yimg.com/iu/api/res/1.2/TM_L8PnmPlQ5lh_cDwmqNw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/32725.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,99.0,9.0,414.l.474186.t.8,1,8.0,True
140
- 138,32685,Jerry Jeudy,False,https://s.yimg.com/iu/api/res/1.2/bPjROeGlioyNPk0xHBu7_w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08262022/32685.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,78.0,7.0,414.l.474186.t.5,2,6.0,True
141
- 139,33966,Chris Olave,False,https://s.yimg.com/iu/api/res/1.2/YZPLrSB.eOYS8Q5zM_uLrg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/33966.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,102.0,9.0,414.l.474186.t.5,2,8.0,True
142
- 140,32231,Jakobi Meyers,False,https://s.yimg.com/iu/api/res/1.2/9wyBwt_A4z1ltXnpNbKD5g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/32231.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,174.0,15.0,414.l.474186.t.5,2,14.0,True
143
- 141,30150,Zay Jones,False,https://s.yimg.com/iu/api/res/1.2/I3r.AujpA.yEcNZPQr26jw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/30150.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,,,,2,10.0,True
144
- 142,31803,John Wolford,False,https://s.yimg.com/iu/api/res/1.2/Tv_XW9BxUjJ4.U8FJN3IGQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/31803.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,,,,2,10.0,True
145
- 143,30614,Taysom Hill,False,https://s.yimg.com/iu/api/res/1.2/p.1N.FtMvV4GHcMxHdjUww--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/30614.png,O,"['QB', 'TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,,,,2,10.0,True
146
- 144,33455,Davis Mills,False,https://s.yimg.com/iu/api/res/1.2/DDzxF1vCU7TQ6cMzzRhyhA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/33455.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,158.0,14.0,414.l.474186.t.2,2,10.0,True
147
- 145,31074,Nyheim Hines,False,https://s.yimg.com/iu/api/res/1.2/TIZ15raJKQHYY1QNCMTPSg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08012023/31074.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.5,Only Bad Juju Here,Will,NA,2022,126.0,11.0,414.l.474186.t.5,2,10.0,True
148
- 146,33537,Evan McPherson,False,https://s.yimg.com/iu/api/res/1.2/hwv0TonIqav8wiFggZSj6g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/33537.png,K,['K'],K,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,150.0,13.0,414.l.474186.t.5,2,12.0,True
149
- 147,100025,San Francisco,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/sfo.gif,DT,['DEF'],DEF,414.l.474186.t.5,Only Bad Juju Here,Will,,2022,139.0,12.0,414.l.474186.t.5,2,11.0,True
150
- 148,32993,Tyler Huntley,False,https://s.yimg.com/iu/api/res/1.2/alizLiWws0hc6yNV_gUqEQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/32993.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.12,Watson Watsoff,Ely,,2022,,,,2,10.0,True
151
- 149,26699,Keenan Allen,False,https://s.yimg.com/iu/api/res/1.2/gCbEcOZk_Lh8EHBnSx1isQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/26699.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.12,Watson Watsoff,Ely,,2022,36.0,3.0,414.l.474186.t.12,2,2.0,True
152
- 150,26664,Robert Woods,False,https://s.yimg.com/iu/api/res/1.2/yqQBSqw646fbFVhB.jGzHQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08152023/26664.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.12,Watson Watsoff,Ely,,2022,84.0,7.0,414.l.474186.t.12,2,6.0,True
153
- 151,31981,Hunter Renfrow,False,https://s.yimg.com/iu/api/res/1.2/u8BAIFQqXyupdqQAw_Hm6Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/31981.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.12,Watson Watsoff,Ely,,2022,77.0,7.0,414.l.474186.t.3,2,6.0,True
154
- 152,31885,Miles Sanders,False,https://s.yimg.com/iu/api/res/1.2/9lD_ronp9xhQnVee4jjypA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07272023/31885.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.12,Watson Watsoff,Ely,,2022,61.0,6.0,414.l.474186.t.12,2,5.0,True
155
- 153,30180,Alvin Kamara,False,https://s.yimg.com/iu/api/res/1.2/viS6OEQEIhOpJ7DMpz6dBw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/30180.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.12,Watson Watsoff,Ely,,2022,13.0,2.0,414.l.474186.t.12,2,1.0,True
156
- 154,28592,Darren Waller,False,https://s.yimg.com/iu/api/res/1.2/huxiwRVZLOt1t2B.XWU0zg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08072023/28592.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.12,Watson Watsoff,Ely,,2022,60.0,5.0,414.l.474186.t.12,2,4.0,True
157
- 155,34054,Brian Robinson,False,https://s.yimg.com/iu/api/res/1.2/Ryadq.naQHcX5OZnqTXSZQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/34054.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.12,Watson Watsoff,Ely,Q,2022,157.0,14.0,414.l.474186.t.12,2,13.0,True
158
- 156,5228,Tom Brady,False,https://s.yimg.com/iu/api/res/1.2/Ol_o6nNm9irLqsJ.2ZxQHg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/5228.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.12,Watson Watsoff,Ely,NA,2022,37.0,4.0,414.l.474186.t.12,2,3.0,True
159
- 157,26650,DeAndre Hopkins,False,https://s.yimg.com/iu/api/res/1.2/BSf2ob2XIUFixJRPTv850w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/26650.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,,2022,109.0,10.0,414.l.474186.t.12,2,9.0,True
160
- 158,30118,Corey Davis,False,https://s.yimg.com/iu/api/res/1.2/9VJg4F5pJoJ32he4nwbCsw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/30118.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,,2022,,,,2,10.0,True
161
- 159,31960,Tony Pollard,False,https://s.yimg.com/iu/api/res/1.2/S63xm6zuI1a5XIIfzYtO3w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092022/31960.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,Q,2022,85.0,8.0,414.l.474186.t.12,2,7.0,True
162
- 160,31002,Lamar Jackson,True,https://s.yimg.com/iu/api/res/1.2/0hA844ZfAfY8qn_CfORdtw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/31002.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,,2022,12.0,1.0,414.l.474186.t.12,1,0.0,False
163
- 161,29344,Tyler Higbee,False,https://s.yimg.com/iu/api/res/1.2/H7IhC3F_OhDIHM.6hyR4PQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/29344.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,,2022,,,,2,10.0,True
164
- 162,31424,Gus Edwards,False,https://s.yimg.com/iu/api/res/1.2/QRCYxnhZdLNzkmTD37IyYQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/31424.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.12,Watson Watsoff,Ely,,2022,205.0,18.0,414.l.474186.t.12,2,17.0,True
165
- 163,26534,Justin Tucker,False,https://s.yimg.com/iu/api/res/1.2/J2_kNRYOP0qqVUjUAmlY5w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/26534.png,K,['K'],K,414.l.474186.t.12,Watson Watsoff,Ely,,2022,132.0,11.0,414.l.474186.t.12,2,10.0,True
166
- 164,7520,Robbie Gould,False,https://s.yimg.com/iu/api/res/1.2/2zhwD2efs8sK15WRX0dwjw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/7520.png,K,['K'],BN,414.l.474186.t.12,Watson Watsoff,Ely,NA,2022,,,,2,10.0,True
167
- 165,100006,Dallas,False,https://s.yimg.com/cv/apiv2/default/nfl/20200908/50x50/cr/cowboys.png,DT,['DEF'],DEF,414.l.474186.t.12,Watson Watsoff,Ely,,2022,181.0,16.0,414.l.474186.t.12,2,15.0,True
168
- 166,27591,Jarvis Landry,False,https://s.yimg.com/iu/api/res/1.2/MRwafrUVqUkGohu_PCZ8.A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09112022/27591.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",IR,414.l.474186.t.12,Watson Watsoff,Ely,NA,2022,144.0,12.0,414.l.474186.t.9,2,10.0,True
169
- 167,26662,Geno Smith,False,https://s.yimg.com/iu/api/res/1.2/E9txpiDl4SjiijhfG_larA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07252023/26662.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,162.0,14.0,414.l.474186.t.4,2,13.0,True
170
- 168,32703,Tee Higgins,True,https://s.yimg.com/iu/api/res/1.2/eelMCXUfHYBxtuwYpAzObQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08242022/32703.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,31.0,3.0,414.l.474186.t.4,1,2.0,True
171
- 169,31210,Richie James,False,https://s.yimg.com/iu/api/res/1.2/G3M0VC0mAmv2kt.xlBAmAQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08152023/31210.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,,,,2,10.0,True
172
- 170,31898,Diontae Johnson,True,https://s.yimg.com/iu/api/res/1.2/rWYS3gd7L1OSmCvaDD5O_g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/31898.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,42.0,4.0,414.l.474186.t.4,1,3.0,True
173
- 171,29279,Derrick Henry,False,https://s.yimg.com/iu/api/res/1.2/axybdmTm92jaZUw5ZMNwog--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/29279.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,7.0,1.0,414.l.474186.t.4,2,0.0,False
174
- 172,32705,D'Andre Swift,False,https://s.yimg.com/iu/api/res/1.2/MKPJLDRXqjHsT2XLdZ0aJg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08042023/32705.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,18.0,2.0,414.l.474186.t.4,2,1.0,True
175
- 173,31840,T.J. Hockenson,False,https://s.yimg.com/iu/api/res/1.2/gDcUMhQ1yyyobQf7E8QcxA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08092023/31840.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,90.0,8.0,414.l.474186.t.4,2,7.0,True
176
- 174,33605,Khalil Herbert,False,https://s.yimg.com/iu/api/res/1.2/qdOtFpdIP3YkVtjGnwskIg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08032022/33605.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,127.0,11.0,414.l.474186.t.4,2,10.0,True
177
- 175,31838,Daniel Jones,False,https://s.yimg.com/iu/api/res/1.2/kZt6H9OCdJ_0aE3Bq3eC7g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09102022/31838.1.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,55.0,5.0,414.l.474186.t.4,2,4.0,True
178
- 176,33465,Joshua Palmer,False,https://s.yimg.com/iu/api/res/1.2/JAFW6yNN.sTLPmKLZ8T.0Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/33465.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,186.0,16.0,414.l.474186.t.4,2,15.0,True
179
- 177,28457,Tyler Lockett,False,https://s.yimg.com/iu/api/res/1.2/NYan.iJFfM0a3h1aJ_Qb.w--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07252023/28457.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,103.0,9.0,414.l.474186.t.4,2,8.0,True
180
- 178,33403,Mac Jones,False,https://s.yimg.com/iu/api/res/1.2/VVXTgj1Tqq52qPX_2eEPFA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09122022/33403.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,151.0,13.0,414.l.474186.t.4,2,12.0,True
181
- 179,30142,David Njoku,False,https://s.yimg.com/iu/api/res/1.2/eGmGNbYH6BDTB6ZQQnFJQw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09132022/30142.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,138.0,12.0,414.l.474186.t.4,2,11.0,True
182
- 180,32814,DeeJay Dallas,False,https://s.yimg.com/iu/api/res/1.2/bGFcLBcr0zcHTeUMUOCsmQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07252023/32814.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,,,,2,10.0,True
183
- 181,32858,Tyler Bass,False,https://s.yimg.com/iu/api/res/1.2/bG28u.Fasm8RfRkARyNM.g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08162022/32858.png,K,['K'],K,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,199.0,17.0,414.l.474186.t.4,2,16.0,True
184
- 182,100005,Cleveland,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/cle.gif,DT,['DEF'],DEF,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,,,,2,10.0,True
185
- 183,100004,Cincinnati,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/cin_2.gif,DT,['DEF'],BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,210.0,18.0,414.l.474186.t.4,2,17.0,True
186
- 184,100016,Minnesota,False,https://s.yimg.com/xe/ipt/50x50w.6.gif,DT,['DEF'],BN,414.l.474186.t.4,Show Me the Mooney,Jeff,,2022,,,,2,10.0,True
187
- 185,27564,Derek Carr,True,https://s.yimg.com/iu/api/res/1.2/k2EXQR3Hz7GtngIYEn3VIQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08082023/27564.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,121.0,11.0,414.l.474186.t.9,0,10.0,False
188
- 186,28392,Amari Cooper,False,https://s.yimg.com/iu/api/res/1.2/T2xt0gxTthA0vH6ako9vrw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09132022/28392.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,Q,2022,80.0,7.0,414.l.474186.t.9,2,6.0,True
189
- 187,32727,Van Jefferson,False,https://s.yimg.com/iu/api/res/1.2/nOtC5FZStdnLKxi6eX9H9Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/32727.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,,,,2,10.0,True
190
- 188,31010,Courtland Sutton,True,https://s.yimg.com/iu/api/res/1.2/qjs5FP7W_un0vxmqlUowUQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08262022/31010.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,73.0,7.0,414.l.474186.t.9,1,6.0,True
191
- 189,34019,James Cook,False,https://s.yimg.com/iu/api/res/1.2/Kwq2eYBk7s_hzE.QTsZXaA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08102022/34019.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,97.0,9.0,414.l.474186.t.9,2,8.0,True
192
- 190,33495,Michael Carter,False,https://s.yimg.com/iu/api/res/1.2/Qm1_5db1YOsD5hWtGXQlUg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/33495.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,96.0,8.0,414.l.474186.t.9,2,7.0,True
193
- 191,31056,Mark Andrews,False,https://s.yimg.com/iu/api/res/1.2/y5Rn0Y2I20WZF_AhPnbrIA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08222022/31056.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,25.0,3.0,414.l.474186.t.9,2,2.0,True
194
- 192,31394,Jeff Wilson Jr.,False,https://s.yimg.com/iu/api/res/1.2/We7VtHVodVD_TH5jUJmmmg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/11072022/31394.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,168.0,14.0,414.l.474186.t.9,2,13.0,True
195
- 193,30125,Deshaun Watson,False,https://s.yimg.com/iu/api/res/1.2/6I6UVE5j_yQKbJvBeWm9zQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09132022/30125.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,195.0,17.0,414.l.474186.t.8,2,10.0,True
196
- 194,33473,Amari Rodgers,False,https://s.yimg.com/iu/api/res/1.2/2RZA8J2wPaxhCTkKX07_bQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/11232022/33473.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,,,,2,10.0,True
197
- 195,31868,Deebo Samuel,False,https://s.yimg.com/iu/api/res/1.2/OGE5MT8Euxg9JAackPF6pw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09062022/31868.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,24.0,2.0,414.l.474186.t.9,2,1.0,True
198
- 196,32711,Jonathan Taylor,False,https://s.yimg.com/iu/api/res/1.2/G7TZVr_1W8fZLPEuYpLwkg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09012022/32711.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,Q,2022,1.0,1.0,414.l.474186.t.9,2,0.0,False
199
- 197,34063,Dameon Pierce,False,https://s.yimg.com/iu/api/res/1.2/FOZCdiPoZ3wxE6WNqFVA4g--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34063.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,Q,2022,48.0,4.0,414.l.474186.t.9,2,3.0,True
200
- 198,30227,Samaje Perine,False,https://s.yimg.com/iu/api/res/1.2/t09WyiAn4WAEPdK8fOopUQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08102023/30227.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,179.0,15.0,414.l.474186.t.2,2,10.0,True
201
- 199,33423,Javonte Williams,False,https://s.yimg.com/iu/api/res/1.2/u7lRRElEY9wFdB4IDuRPBw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08262022/33423.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,Q,2022,28.0,3.0,414.l.474186.t.6,2,2.0,True
202
- 200,30997,Rashaad Penny,True,https://s.yimg.com/iu/api/res/1.2/VaIszPrtdc5voaBaitswxg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08042023/30997.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,119.0,10.0,414.l.474186.t.10,1,9.0,True
203
- 201,30346,Harrison Butker,False,https://s.yimg.com/iu/api/res/1.2/kRja96cMmbAodp9m4xmo2Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09052022/30346.png,K,['K'],K,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,212.0,18.0,414.l.474186.t.3,2,10.0,True
204
- 202,100033,Baltimore,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/bal_2.gif,DT,['DEF'],DEF,414.l.474186.t.9,Sutton On The Dock Of The Bay,Devin,,2022,185.0,16.0,414.l.474186.t.1,2,10.0,True
205
- 203,34042,Malik Willis,False,https://s.yimg.com/iu/api/res/1.2/.htls9vA4b6ZtFaw0_rmbw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/34042.png,O,"['QB', 'Q/W/R/T']",QB,414.l.474186.t.8,Robotron 7000,Ben,,2022,153.0,13.0,414.l.474186.t.11,2,10.0,True
206
- 204,27535,Mike Evans,False,https://s.yimg.com/iu/api/res/1.2/.7Fzudy9HGhlMQCxWxBAEg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08182023/27535.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.8,Robotron 7000,Ben,,2022,22.0,2.0,414.l.474186.t.8,2,1.0,True
207
- 205,31017,Christian Kirk,False,https://s.yimg.com/iu/api/res/1.2/Wom.mgKC6gbvZILJMAEiJQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/31017.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.8,Robotron 7000,Ben,Q,2022,75.0,7.0,414.l.474186.t.8,2,6.0,True
208
- 206,33963,Drake London,False,https://s.yimg.com/iu/api/res/1.2/I2R4uFJcaejHiOMt_q6tIw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08192022/33963.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",WR,414.l.474186.t.8,Robotron 7000,Ben,,2022,104.0,9.0,414.l.474186.t.1,2,8.0,True
209
- 207,31856,Josh Jacobs,False,https://s.yimg.com/iu/api/res/1.2/6q.PFWRMhuvredK21Mel5Q--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/31856.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.8,Robotron 7000,Ben,,2022,51.0,5.0,414.l.474186.t.8,2,4.0,True
210
- 208,30121,Christian McCaffrey,False,https://s.yimg.com/iu/api/res/1.2/NMM4SpK6RcmQaRbcmxcRUA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/07262023/30121.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",RB,414.l.474186.t.8,Robotron 7000,Ben,,2022,3.0,1.0,414.l.474186.t.8,2,0.0,False
211
- 209,30157,Gerald Everett,False,https://s.yimg.com/iu/api/res/1.2/X6vxfBP9CfXbn3X6T5.ulg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/30157.png,O,"['TE', 'W/R/T', 'Q/W/R/T']",TE,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
212
- 210,31908,Terry McLaurin,False,https://s.yimg.com/iu/api/res/1.2/6ubX.FQD1vkEgx_QRp0BIQ--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08172023/31908.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",W/R/T,414.l.474186.t.8,Robotron 7000,Ben,,2022,27.0,3.0,414.l.474186.t.8,2,2.0,True
213
- 211,32676,Justin Herbert,True,https://s.yimg.com/iu/api/res/1.2/MkjpSwRr3oxLnp364DoFQw--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09092022/32676.png,O,"['QB', 'Q/W/R/T']",Q/W/R/T,414.l.474186.t.8,Robotron 7000,Ben,Q,2022,94.0,8.0,414.l.474186.t.8,0,7.0,False
214
- 212,31141,Mike White,False,https://s.yimg.com/iu/api/res/1.2/Pipjb9dyDTzyvf1DNmvaQg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08102023/31141.png,O,"['QB', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
215
- 213,34120,Kyren Williams,False,https://s.yimg.com/iu/api/res/1.2/eXr3FPJ36vxaxtgECBvrrA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09082022/34120.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
216
- 214,34088,Romeo Doubs,False,https://s.yimg.com/iu/api/res/1.2/PNVAqx8vKPCkvep7QF55xg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/34088.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,142.0,12.0,414.l.474186.t.8,2,11.0,True
217
- 215,34009,Skyy Moore,False,https://s.yimg.com/iu/api/res/1.2/UNwknWtbcShl2pH_EzW.9A--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34009.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,159.0,14.0,414.l.474186.t.7,2,10.0,True
218
- 216,33967,Jameson Williams,False,https://s.yimg.com/iu/api/res/1.2/Yf4GNRg6hfpOwcphhsWmuA--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/08302022/33967.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,SUSP,2022,190.0,16.0,414.l.474186.t.8,2,15.0,True
219
- 217,30996,Calvin Ridley,False,https://s.yimg.com/iu/api/res/1.2/YiOVcPN_6AWTwPob4gWpRg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/12072022/30996.png,O,"['WR', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
220
- 218,34078,Zamir White,False,https://s.yimg.com/iu/api/res/1.2/4ynGBO1xwnxQipSY6Gszbg--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09022022/34078.png,O,"['RB', 'W/R/T', 'Q/W/R/T']",BN,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
221
- 219,27369,Brett Maher,False,https://s.yimg.com/iu/api/res/1.2/Jd6XOuB8nwONFYN9ZDnkog--~C/YXBwaWQ9eXNwb3J0cztjaD0yMzM2O2NyPTE7Y3c9MTc5MDtkeD04NTc7ZHk9MDtmaT11bGNyb3A7aD02MDtxPTEwMDt3PTQ2/https://s.yimg.com/xe/i/us/sp/v/nfl_cutout/players_l/09222022/27369.png,K,['K'],K,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True
222
- 220,100020,New York,False,https://s.yimg.com/lq/i/us/sp/v/nfl/teams/1/50x50w/nyj.gif,DT,['DEF'],DEF,414.l.474186.t.8,Robotron 7000,Ben,,2022,,,,2,10.0,True