diff --git a/benchcoach/static/favicon.ico b/benchcoach/static/favicon.ico new file mode 100644 index 0000000..fb8c381 Binary files /dev/null and b/benchcoach/static/favicon.ico differ diff --git a/benchcoach/views.py b/benchcoach/views.py index b3c5570..1a7c97f 100644 --- a/benchcoach/views.py +++ b/benchcoach/views.py @@ -2,5 +2,5 @@ from django.http import HttpResponse from django.shortcuts import render def welcome(request): - pages = ['schedule', 'teams list', 'venues list', 'players list'] + pages = ['events list', 'teams list', 'venues list', 'players list'] return render(request,'home.html',{'pages':pages}) \ No newline at end of file diff --git a/events/admin.py b/events/admin.py index 9a254b5..ccdab45 100644 --- a/events/admin.py +++ b/events/admin.py @@ -1,7 +1,7 @@ from django.contrib import admin -from .models import Event, Availability +from .models import Event # Register your models here. admin.site.register(Event) -admin.site.register(Availability) + diff --git a/events/migrations/0004_delete_availability.py b/events/migrations/0004_delete_availability.py new file mode 100644 index 0000000..3b81fae --- /dev/null +++ b/events/migrations/0004_delete_availability.py @@ -0,0 +1,16 @@ +# Generated by Django 3.2.6 on 2021-11-14 23:59 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('events', '0003_delete_positioning'), + ] + + operations = [ + migrations.DeleteModel( + name='Availability', + ), + ] diff --git a/events/models.py b/events/models.py index c474a33..51eb2e2 100644 --- a/events/models.py +++ b/events/models.py @@ -12,23 +12,5 @@ class Event(models.Model): def __str__(self): return f"{self.start:%Y-%m-%d %H:%M}" -class Availability(models.Model): - event = models.ForeignKey(Event, on_delete=models.CASCADE) - player = models.ForeignKey(Player, on_delete=models.CASCADE) - choices = [ - ('Yes', 'YES'), - ('No', 'NO'), - ('Maybe', 'MAY'), - ('Unknown', 'UNK') - ] - available = models.CharField(choices=choices, default='UNK',max_length = 7) - - def __str__(self): - return f"{self.event}; {self.player}; {self.available}" - - class Meta: - unique_together = ('event', 'player',) - verbose_name_plural = "availabilities" - class Season(models.Model): name = models.CharField(max_length=50) \ No newline at end of file diff --git a/events/templates/events/schedule.html b/events/templates/events/schedule.html deleted file mode 100644 index bb542e0..0000000 --- a/events/templates/events/schedule.html +++ /dev/null @@ -1,16 +0,0 @@ -{% extends 'base.html' %}{% block title %} {{ title }} {% endblock %}{% block content %} - -

{{ title }}

-
    -{% for event in events %} -
  1. - {{ event.away_team.name }} vs. {{ event.home_team.name }}
    - {{ event.start|date:"l, F j, Y g:i A" }}
    - {{ event.venue.name }}
    - Edit Event Details - Edit Lineup -
  2. -{% endfor %} -
- -{% endblock %} \ No newline at end of file diff --git a/events/urls.py b/events/urls.py index c8f863a..d9b9f92 100644 --- a/events/urls.py +++ b/events/urls.py @@ -6,8 +6,7 @@ from . import views urlpatterns = [ path('', views.root, name="root"), - path('schedule', views.schedule, name="schedule"), - path('edit/', views.edit, name="edit event"), - path('edit', views.edit, name="edit event"), - path('edit', views.edit, name="edit event") + path('list', views.EventsListView.as_view(), name="events list"), + path('edit/', views.EventEditView.as_view(), name="edit event"), + path('edit', views.EventEditView.as_view(), name="edit event"), ] \ No newline at end of file diff --git a/events/views.py b/events/views.py index db01cba..9b83e5f 100644 --- a/events/views.py +++ b/events/views.py @@ -1,43 +1,33 @@ from django.shortcuts import render, redirect, get_object_or_404 -from django.http import HttpResponse from django.urls import reverse from .models import Event from .forms import EventForm -from django.http import HttpResponse +from lib.views import BenchcoachListView, BenchcoachEditView def root(request): - return redirect('/events/schedule') + return redirect(reverse('events list')) -def schedule(request): - events = Event.objects.all() - return render(request, 'events/schedule.html', {'title':'Schedule', 'events': events}) +class EventsListView(BenchcoachListView): + Model = Event + edit_url = 'edit event' + list_url = 'events list' + page_title = "Events" + title_strf = '{item.away_team} vs. {item.home_team}' + body_strf = "{item.start:%a, %b %-d, %-I:%M %p},\n{item.venue}" -def edit(request, id=0): - # if this is a POST request we need to process the form data - if request.method == 'POST': - # create a form instance and populate it with data from the request: - if id: - instance = get_object_or_404(Event, id=id) - form = EventForm(request.POST or None, instance=instance) - else: - form = EventForm(request.POST or None) - # check whether it's valid: - if form.is_valid(): - # process the data in form.cleaned_data as required - # ... - # redirect to a new URL: - if id == 0: id = None - new_event, did_create = Event.objects.update_or_create(pk=id, defaults=form.cleaned_data) - return render(request, 'success.html', {'call_back':reverse('schedule'),'id':new_event.id}, status=201 if did_create else 200) - else: - return HttpResponse(status=400) + def get_context_data(self): + context = super().get_context_data() + for item in context['items']: + item['buttons'].append( + { + 'label': 'Edit Lineup', + 'href': reverse('edit lineup', args=[item['id']]) + } + ) + return context - # if a GET (or any other method) we'll create a blank form - else: - if id: - instance = get_object_or_404(Event, id=id) - form = EventForm(request.POST or None, instance=instance) - else: - form = EventForm - - return render(request, 'edit.html', {'form': form, 'id': id, 'call_back': 'edit event'}) \ No newline at end of file +class EventEditView(BenchcoachEditView): + Model = Event + edit_url = 'edit event' + list_url = 'events list' + Form = EventForm \ No newline at end of file diff --git a/lib/__init__.py b/lib/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/views.py b/lib/views.py new file mode 100644 index 0000000..cf00d68 --- /dev/null +++ b/lib/views.py @@ -0,0 +1,79 @@ +from django.shortcuts import render, redirect, get_object_or_404 +from django.views import View +from django.views.generic.base import TemplateView +from django.forms.models import model_to_dict +from django import forms +from django.db import models +from django.http import HttpResponse, HttpResponseBadRequest +from django.urls import reverse +# from .models import Event +# from .forms import EventForm +from django.http import HttpResponse + + +class BenchcoachListView(TemplateView): + Model = models.Model + template_name = 'list.html' + edit_url = 'edit item' + list_url = 'items list' + template_name = 'list.html' + page_title = f"{Model.__name__}s" + title_strf = "{item}" + subtitle_strf = "" + body_strf = "" + + def get_context_data(self): + items = self.Model.objects.all() + context = { + 'title': self.page_title, + 'items': [ + { + 'id': item.id, + 'title': self.title_strf.format(item=item, **model_to_dict(item)), + 'subtitle': self.subtitle_strf.format(item=item, **model_to_dict(item)), + 'body': self.body_strf.format(item=item, **model_to_dict(item)), + 'buttons': [ + { + 'label': 'Edit', + 'href': reverse(self.edit_url, args=[item.id]) + } + ] + } + for item in items + ] + } + return context + +class BenchcoachEditView(TemplateView): + Form: forms.ModelForm = None + Model: models.Model = None + edit_url = 'edit item' + list_url = 'items list' + + def post(self, request, *args, **kwargs): + id = kwargs.get('id') + # create a form instance and populate it with data from the request: + if id: + instance = get_object_or_404(self.Model, id=id) + form = self.Form(request.POST or None, instance=instance) + else: + form = self.Form(request.POST or None) + # check whether it's valid: + if form.is_valid(): + # process the data in form.cleaned_data as required + # ... + # redirect to a new URL: + new_item, did_create = self.Model.objects.update_or_create(pk=id, defaults=form.cleaned_data) + return render(request, 'success.html', {'call_back_url': reverse(self.list_url), 'id': new_item.id}, + status=201 if did_create else 200) + return HttpResponseBadRequest() + + def get(self, request, *args, **kwargs): + pass + id = kwargs.get('id') + if id: + instance = get_object_or_404(self.Model, id=id) + form = self.Form(request.POST or None, instance=instance) + else: + form = self.Form + return render(request, 'edit.html', {'form': form, 'id': id, 'call_back': self.edit_url}) diff --git a/lineups/admin.py b/lineups/admin.py index 8c38f3f..d067bb9 100644 --- a/lineups/admin.py +++ b/lineups/admin.py @@ -1,3 +1,6 @@ from django.contrib import admin +from .models import Availability, Positioning # Register your models here. +admin.site.register(Availability) +admin.site.register(Positioning) \ No newline at end of file diff --git a/lineups/fixtures/2021cmba.json b/lineups/fixtures/2021cmba.json index d775cf2..39b4e6e 100644 --- a/lineups/fixtures/2021cmba.json +++ b/lineups/fixtures/2021cmba.json @@ -3348,5 +3348,9230 @@ "position": null, "order": null } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 1, + "available": 2 } -] \ No newline at end of file + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 1, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 1, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 1, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 1, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 1, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 1, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 1, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 2, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 2, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 2, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 2, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 2, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 2, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 2, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 3, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 3, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 3, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 3, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 3, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 3, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 3, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 3, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 3, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 4, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 4, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 4, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 4, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 4, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 4, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 4, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 5, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 5, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 5, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 5, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 5, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 5, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 5, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 6, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 6, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 6, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 6, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 6, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 7, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 7, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 7, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 7, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 7, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 7, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 7, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 8, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 8, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 8, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 8, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 8, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 8, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 9, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 9, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 9, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 9, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 9, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 10, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 10, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 10, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 10, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 10, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 10, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 11, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 11, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 11, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 11, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 11, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 11, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 11, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 12, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 12, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 12, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 12, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 12, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 12, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 12, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 12, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 12, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 12, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 12, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 13, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 13, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 13, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 13, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 13, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 14, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 14, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 14, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 14, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 14, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 14, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 14, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 14, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 14, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 14, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 14, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 15, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 15, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 15, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 15, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 16, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 16, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 16, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 16, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 16, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 16, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 17, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 17, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 17, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 17, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 17, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 17, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 18, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 18, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 18, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 18, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 18, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 19, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 19, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 19, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 19, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 19, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 19, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 19, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 19, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 19, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 19, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 19, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 20, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 20, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 20, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 20, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 20, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 20, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 20, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 21, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 21, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 21, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 21, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 21, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 21, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 21, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 21, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 22, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 22, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 22, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 22, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 22, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 22, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 22, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 23, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 23, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 23, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 23, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 23, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 23, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 24, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 24, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 24, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 24, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 24, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 24, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 25, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 25, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 25, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 25, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 25, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 25, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 25, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 25, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 25, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 26, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 26, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 26, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 26, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 26, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 27, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 27, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 27, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 27, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 27, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 27, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 28, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 28, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 28, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 28, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 28, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 28, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 28, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 28, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 29, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 29, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 29, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 29, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 29, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 29, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 29, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 29, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 29, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 30, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 30, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 30, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 30, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 30, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 30, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 30, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 30, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 30, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 30, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 31, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 31, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 31, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 31, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 31, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 31, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 32, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 32, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 32, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 33, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 33, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 33, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 33, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 33, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 33, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 33, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 33, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 33, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 33, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 34, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 34, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 34, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 34, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 34, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 34, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 34, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 34, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 34, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 35, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 35, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 35, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 35, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 35, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 35, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 36, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 36, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 36, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 36, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 36, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 36, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 36, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 37, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 37, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 37, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 37, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 37, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 37, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 38, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 38, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 38, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 38, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 38, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 39, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 39, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 39, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 39, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 39, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 39, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 40, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 40, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 40, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 40, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 10, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 11, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 1, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 7, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 16, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 3, + "event_id": 41, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 19, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 21, + "event_id": 41, + "available": -1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 14, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 20, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 25, + "event_id": 41, + "available": 1 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 8, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 22, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 18, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 12, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 13, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 23, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 4, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 24, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 2, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 6, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 15, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 9, + "event_id": 41, + "available": 2 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 17, + "event_id": 41, + "available": 0 + } + }, + { + "model": "lineups.availability", + "pk": null, + "fields": { + "player_id": 5, + "event_id": 41, + "available": 2 + } + } +] diff --git a/lineups/migrations/0002_availability.py b/lineups/migrations/0002_availability.py new file mode 100644 index 0000000..4811e01 --- /dev/null +++ b/lineups/migrations/0002_availability.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.6 on 2021-11-14 23:59 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('players', '0003_player_team'), + ('events', '0004_delete_availability'), + ('lineups', '0001_initial'), + ] + + operations = [ + migrations.CreateModel( + name='Availability', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('available', models.IntegerField(choices=[(2, 'Yes'), (-1, 'No'), (1, 'MAY'), (0, 0)], default=0, max_length=7)), + ('event', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='events.event')), + ('player', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='players.player')), + ], + options={ + 'verbose_name_plural': 'availabilities', + 'unique_together': {('event', 'player')}, + }, + ), + ] diff --git a/lineups/migrations/0003_alter_availability_available.py b/lineups/migrations/0003_alter_availability_available.py new file mode 100644 index 0000000..c01a5ea --- /dev/null +++ b/lineups/migrations/0003_alter_availability_available.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.6 on 2021-11-15 00:32 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('lineups', '0002_availability'), + ] + + operations = [ + migrations.AlterField( + model_name='availability', + name='available', + field=models.IntegerField(choices=[(2, 'Yes'), (0, 'No'), (1, 'MAY'), (-1, 0)], default=-1), + ), + ] diff --git a/lineups/migrations/0004_alter_availability_available.py b/lineups/migrations/0004_alter_availability_available.py new file mode 100644 index 0000000..27be08f --- /dev/null +++ b/lineups/migrations/0004_alter_availability_available.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.6 on 2021-11-15 00:40 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('lineups', '0003_alter_availability_available'), + ] + + operations = [ + migrations.AlterField( + model_name='availability', + name='available', + field=models.IntegerField(choices=[(2, 'Yes'), (0, 'No'), (1, 'Maybe'), (-1, 'Unknown')], default=-1), + ), + ] diff --git a/lineups/models.py b/lineups/models.py index 36c0938..fddcb32 100644 --- a/lineups/models.py +++ b/lineups/models.py @@ -23,4 +23,27 @@ class Positioning(models.Model): order = models.IntegerField(default=None, null=True) class Meta: - unique_together = ('player', 'event',) \ No newline at end of file + unique_together = ('player', 'event',) + +class Availability(models.Model): + YES = 2 + MAYBE = 1 + NO = 0 + UNKNOWN = -1 + + event = models.ForeignKey(Event, on_delete=models.CASCADE) + player = models.ForeignKey(Player, on_delete=models.CASCADE) + choices = [ + (YES, 'Yes'), + (NO, 'No'), + (MAYBE, 'Maybe'), + (UNKNOWN, 'Unknown') + ] + available = models.IntegerField(choices=choices, default=UNKNOWN) + + def __str__(self): + return f"{self.event}; {self.player}; {self.available}" + + class Meta: + unique_together = ('event', 'player',) + verbose_name_plural = "availabilities" \ No newline at end of file diff --git a/lineups/templates/lineups/lineup.html b/lineups/templates/lineups/lineup.html index 1be4eca..542da5e 100644 --- a/lineups/templates/lineups/lineup.html +++ b/lineups/templates/lineups/lineup.html @@ -7,7 +7,8 @@ {{ event.venue.name }}
-
+
+
Lineup
{#
    #}
    @@ -35,10 +36,23 @@
-
+
+
Players
    {% for player in players %} -
  • {{ player.first_name }} {{ player.last_name }}
  • +
  • + {% if player.availability.available == 2 %} + Yes + {% elif player.availability.available == 1%} + Maybe + {% elif player.availability.available == 0%} + No + {% elif player.availability.available == -1%} + Unknown + {% endif %} + {{ player.first_name }} {{ player.last_name }} + {{ player.statline }} +
  • {% endfor %}
diff --git a/lineups/views.py b/lineups/views.py index 05860fc..5866d2b 100644 --- a/lineups/views.py +++ b/lineups/views.py @@ -1,11 +1,9 @@ from django.shortcuts import render, redirect, get_object_or_404 -from django.forms import formset_factory from .models import Positioning from .forms import PositioningFormSet -from django.http import HttpResponse -from django import forms from events.models import Event from players.models import Player +from django.forms.models import model_to_dict # Create your views here. def edit(request, event_id): @@ -31,7 +29,17 @@ def edit(request, event_id): return render(request, 'success.html', {'call_back':'edit lineup','id':event_id}, status=200) # return render(request, 'success.html', {'call_back':'schedule'}) event = Event.objects.get(id=event_id) - players = Player.objects.all() + players = Player.objects.all().prefetch_related('availability_set', 'statline_set') + players = [ + { + **model_to_dict(player), + 'availability':player.availability_set.get(event_id=event_id), + # 'available_value': player.availability_set.get(event_id=event_id).available, + 'statline': player.statline_set.get(player_id=player.id) + } + for player in players + ] + players.sort(key=lambda d: d['availability'].available, reverse = True) qset = Positioning.objects.filter(event_id=event_id, order__isnull = False) formset = PositioningFormSet(queryset=qset) for form in formset: diff --git a/players/fixtures/2021cmba.json b/players/fixtures/2021cmba.json index b0d7c76..ba001a4 100644 --- a/players/fixtures/2021cmba.json +++ b/players/fixtures/2021cmba.json @@ -223,5 +223,255 @@ "jersey_number": 45, "last_name": "Kelly" } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.417, + "onbase_pct": 0.488, + "player_id": 1, + "slugging_pct": 0.472 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.422, + "onbase_pct": 0.518, + "player_id": 2, + "slugging_pct": 0.667 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0, + "onbase_pct": 0.2, + "player_id": 3, + "slugging_pct": 0 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.061, + "onbase_pct": 0.233, + "player_id": 4, + "slugging_pct": 0.061 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.282, + "onbase_pct": 0.338, + "player_id": 5, + "slugging_pct": 0.296 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.267, + "onbase_pct": 0.333, + "player_id": 6, + "slugging_pct": 0.3 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.214, + "onbase_pct": 0.235, + "player_id": 7, + "slugging_pct": 0.357 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.219, + "onbase_pct": 0.324, + "player_id": 8, + "slugging_pct": 0.344 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.28, + "onbase_pct": 0.28, + "player_id": 9, + "slugging_pct": 0.32 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.333, + "onbase_pct": 0.424, + "player_id": 10, + "slugging_pct": 0.373 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0, + "onbase_pct": 0.25, + "player_id": 11, + "slugging_pct": 0 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0, + "onbase_pct": 0, + "player_id": 12, + "slugging_pct": 0 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.379, + "onbase_pct": 0.379, + "player_id": 13, + "slugging_pct": 0.552 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.095, + "onbase_pct": 0.174, + "player_id": 14, + "slugging_pct": 0.143 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.41, + "onbase_pct": 0.486, + "player_id": 15, + "slugging_pct": 0.525 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.357, + "onbase_pct": 0.406, + "player_id": 16, + "slugging_pct": 0.536 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.185, + "onbase_pct": 0.312, + "player_id": 17, + "slugging_pct": 0.259 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.299, + "onbase_pct": 0.378, + "player_id": 18, + "slugging_pct": 0.391 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.438, + "onbase_pct": 0.571, + "player_id": 19, + "slugging_pct": 0.781 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.333, + "onbase_pct": 0.417, + "player_id": 20, + "slugging_pct": 0.367 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.333, + "onbase_pct": 0.41, + "player_id": 22, + "slugging_pct": 0.522 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.062, + "onbase_pct": 0.211, + "player_id": 23, + "slugging_pct": 0.125 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.5, + "onbase_pct": 0.611, + "player_id": 24, + "slugging_pct": 0.5 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0.25, + "onbase_pct": 0.25, + "player_id": 25, + "slugging_pct": 0.5 + } + }, + { + "model": "players.statline", + "pk": null, + "fields": { + "batting_avg": 0, + "onbase_pct": 0, + "player_id": 21, + "slugging_pct": 0 + } } ] \ No newline at end of file diff --git a/players/models.py b/players/models.py index d28cb9f..c769aa0 100644 --- a/players/models.py +++ b/players/models.py @@ -20,7 +20,7 @@ class StatLine(models.Model): slugging_pct = models.DecimalField(max_digits=4, decimal_places=3, default=0) def __str__(self): - return f"{self.batting_avg}/{self.onbase_pct}/{self.slugging_pct}" + return f"{self.slash_line}" @property def slash_line(self): diff --git a/players/urls.py b/players/urls.py index 6618794..621b262 100644 --- a/players/urls.py +++ b/players/urls.py @@ -1,10 +1,12 @@ from django.urls import path, include +from .views import PlayerListView, PlayerEditView + from . import views urlpatterns = [ path('', views.root, name="root"), - path('list', views.list, name="players list"), - path('edit/', views.edit, name="edit player"), - path('edit', views.edit, name="edit player") + path('list', PlayerListView.as_view(), name='players list'), + path('edit/', PlayerEditView.as_view(), name="edit player"), + path('edit', PlayerEditView.as_view(), name="edit player") ] \ No newline at end of file diff --git a/players/views.py b/players/views.py index 5ffb8d1..afc7a7d 100644 --- a/players/views.py +++ b/players/views.py @@ -1,48 +1,26 @@ from django.shortcuts import render, redirect, get_object_or_404 +from django.views.generic.list import ListView from django.http import HttpResponse from django.urls import reverse from .models import Player from .forms import PlayerForm +from lib.views import BenchcoachListView, BenchcoachEditView # Create your views here. + +class PlayerListView(BenchcoachListView): + Model = Player + edit_url = 'edit player' + list_url = 'players list' + page_title = "Players" + title_strf = "{first_name} {last_name}" + subtitle_strf = "#{jersey_number}" + def root(request): return redirect('/players/list') -def list(request): - players = Player.objects.all() - return render(request, 'list.html', {'title': "Players", - 'items': [ - {'id':player.id, - 'title':f"{player.first_name} {player.last_name}", - 'subtitle':f"{player.jersey_number}" - } - for player in players], - 'edit_url_name': 'edit player'}) - -def edit(request, id=0): - # if this is a POST request we need to process the form data - if request.method == 'POST': - # create a form instance and populate it with data from the request: - if id: - instance = get_object_or_404(Player, id=id) - form = PlayerForm(request.POST or None, instance=instance) - else: - form = PlayerForm(request.POST or None) - # check whether it's valid: - if form.is_valid(): - # process the data in form.cleaned_data as required - if id == 0: id = None - new_player, did_create = Player.objects.update_or_create(pk=id, defaults=form.cleaned_data) - return render(request, 'success.html', {'call_back':reverse('players list'),'id':new_player.id}, status=201 if did_create else 200) - else: - return HttpResponse(status=400) - - # if a GET (or any other method) we'll create a blank form - else: - if id: - instance = get_object_or_404(Player, id=id) - form = PlayerForm(request.POST or None, instance=instance) - else: - form = PlayerForm - - return render(request, 'edit.html', {'form': form, 'id': id, 'call_back':'edit player'}) \ No newline at end of file +class PlayerEditView(BenchcoachEditView): + Form = PlayerForm + Model = Player + edit_url = 'edit player' + list_url = 'players list' \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..7c7317f --- /dev/null +++ b/requirements.txt @@ -0,0 +1,19 @@ +asgiref==3.4.1 +beautifulsoup4==4.9.3 +certifi==2021.5.30 +charset-normalizer==2.0.4 +Django==3.2.6 +idna==3.2 +importlib-metadata==3.10.1 +libsass==0.21.0 +Pillow==8.3.1 +PyYAML==6.0 +requests==2.26.0 +six==1.16.0 +soupsieve==2.2.1 +sqlparse==0.4.1 +urllib3==1.26.6 +zipp==3.5.0 +django-bootstrap-v5==1.0.7 +django-crispy-forms +psycopg2 \ No newline at end of file diff --git a/teams/urls.py b/teams/urls.py index 16c4438..f0d37f9 100644 --- a/teams/urls.py +++ b/teams/urls.py @@ -6,7 +6,7 @@ from . import views urlpatterns = [ path('', views.root, name="root"), - path('list', views.list, name="teams list"), - path('edit/', views.edit, name="edit team"), - path('edit', views.edit, name="edit team") + path('list', views.TeamsListView.as_view(), name="teams list"), + path('edit/', views.TeamEditView.as_view(), name="edit team"), + path('edit', views.TeamEditView.as_view(), name="edit team") ] \ No newline at end of file diff --git a/teams/views.py b/teams/views.py index f78fbf1..6a19dd4 100644 --- a/teams/views.py +++ b/teams/views.py @@ -3,43 +3,19 @@ from django.http import HttpResponse from django.urls import reverse from .forms import TeamForm from .models import Team +from lib.views import BenchcoachListView, BenchcoachEditView def root(request): - return redirect('/teams/list') + return redirect(reverse('teams list')) -def list(request): - teams = Team.objects.all() - return render(request, 'list.html', {'title': "Players", - 'items': [ - {'id':team.id, - 'title':f"{team.name}" - } - for team in teams], - 'edit_url_name': 'edit team'}) +class TeamsListView(BenchcoachListView): + Model = Team + edit_url = 'edit team' + list_url = 'teams list' + page_title = "Teams" -def edit(request, id=0): - # if this is a POST request we need to process the form data - if request.method == 'POST': - # create a form instance and populate it with data from the request: - if id: - instance = get_object_or_404(Team, id=id) - form = TeamForm(request.POST or None, instance=instance) - else: - form = TeamForm(request.POST or None) - # check whether it's valid: - if form.is_valid(): - # process the data in form.cleaned_data as required - # ... - # redirect to a new URL: - new_team, did_create = Team.objects.update_or_create(pk=id, defaults=form.cleaned_data) - return render(request, 'success.html', {'call_back_url':reverse('teams list'), 'id':new_team.id},status=201 if did_create else 200) - - # if a GET (or any other method) we'll create a blank form - else: - if id: - instance = get_object_or_404(Team, id=id) - form = TeamForm(request.POST or None, instance=instance) - else: - form = TeamForm - - return render(request, 'edit.html', {'form': form, 'id': id, 'call_back':'edit team'}) \ No newline at end of file +class TeamEditView(BenchcoachEditView): + Model = Team + edit_url = 'edit team' + list_url = 'teams list' + Form = TeamForm \ No newline at end of file diff --git a/templates/base.html b/templates/base.html index 8455c04..2d46b6c 100644 --- a/templates/base.html +++ b/templates/base.html @@ -8,19 +8,24 @@ {% bootstrap_css %} {% bootstrap_javascript %} - + + + + + + -