from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) import random import numpy as np class Constants(BaseConstants): name_in_url = "my_app" players_per_group = None num_rounds = 27 y = [125,129.43,129.03,128.7,130.08,129.25,129.06,130.26,129.15,129.94,129.04,131.28,130.11,128.51,132.88,131.11,132.54,132.85,130.77,132.99,131.57,133.59,132.59,131.82,132.68,133.56,132.29,131.95,134.92,133.05,133.35,133.69,135.55,133.5,135.04,135.17,136.22,134.62,136.01,135.99,137.03,135.5,134.76,136.09,135.59,137.4,137.33,137.45,137.58,139.07,137.55,139,138.7,138.82,138.74,138.82,138.19,139.08,139.87,139.69,138.57,140.88,140.48,139.18,140.43,141.2,142.07,141.91,139.02,142.12,141.31,140.55,143.34,143.88,140.78,142.87,144.16,141.86,143.87,144.23,144.49,144.65,143.17,144.6,143.7,145.24,144.42,145.56,146.3,145.24,145.76,145.75,144.2,146.18,146.91,148.21,149,148.75,147.74,148.1,125,117.51,115.99,113.13,122.59,112.96,113.52,120.77,109.79,117.67,107.98,125.54,111.08,103.24,135.16,112.2,128.09,124.51,110,128.93,112.34,130.41,117.01,114.63,120.38,123.84,112.86,112.78,132.58,112.6,119.64,118.97,131.16,112.16,127.66,122.86,130.65,116.17,129.2,124.18,131.99,117.9,115.92,124.83,117.7,131.48,125.83,127.39,126.83,136.43,121.89,135.44,128.25,130.23,128.13,128.28,122.81,129.71,132.19,129.2,121.22,138.81,129.7,122.36,132.29,133.71,138.38,134.84,114.67,141.42,126.71,124.82,143.92,141,119.14,139.35,141.3,123.66,141.98,138,140.02,139.52,128.3,140.69,129.72,142.73,132.09,142.32,143.37,134.69,139.92,137.26,126.25,142.36,141.65,150,152.03,148.61,141.61,145.19,125,104.8,108.94,101.56,116.97,98.99,104.08,111.57,94.67,109.1,90.84,120.35,91.88,88.15,131.68,90.22,123.24,107.85,92.72,120.53,90.48,123.64,95.08,99.65,103.98,108.65,91.55,94.71,120.8,87.14,104.88,97.5,117.75,85.14,114.87,99.21,115.54,89.46,114.33,99.74,115.47,90.26,93.42,103.16,91.34,113.31,99.59,105.69,101.93,116.71,92.1,116.96,99.49,107.41,100.71,102.82,93.44,105.06,105.19,101.34,90.01,116.81,97.36,92.14,105.21,104.39,111.5,104.32,77.01,119.67,88.21,94.37,117.19,109.23,80.15,113.63,107.76,85.75,114.81,101.87,108.95,104.99,90.15,109.89,89.09,112.81,90.74,111.27,106.31,96.27,104.48,98.23,83.92,108.81,101.68,116.3,114.89,111.01,100.91,107.5,125,129.03,128.24,127.51,128.48,127.25,126.66,127.47,125.95,126.35,125.04,126.88,125.31,123.31,127.28,125.11,126.14,126.05,123.57,125.39,123.58,125.19,123.79,122.62,123.09,123.57,121.89,121.15,123.72,121.46,121.35,121.3,122.75,120.31,121.45,121.17,121.82,119.83,120.81,120.39,121.04,119.1,117.96,118.89,118,119.4,118.93,118.65,118.38,119.47,117.55,118.61,117.9,117.62,117.15,116.82,115.79,116.28,116.68,116.1,114.57,116.49,115.68,113.99,114.83,115.2,115.67,115.11,111.82,114.52,113.31,112.15,114.54,114.69,111.18,112.87,113.76,111.07,112.67,112.63,112.49,112.25,110.37,111.4,110.11,111.24,110.02,110.77,111.1,109.65,109.77,109.35,107.41,108.98,109.31,110.22,110.61,109.95,108.55,108.5,125,116.81,114.79,111.39,120.31,110.14,110.16,116.88,105.36,112.7,102.46,119.5,104.49,96.12,127.49,103.99,119.35,115.22,100.19,118.57,101.45,118.98,105.04,102.12,107.33,110.25,98.73,98.12,117.38,96.86,103.36,102.15,113.8,94.27,109.22,103.88,111.14,96.12,108.61,103.05,110.33,95.7,93.17,101.55,93.88,107.12,100.93,101.96,100.86,109.91,94.84,107.86,100.12,101.57,98.92,98.54,92.53,98.89,100.84,97.3,88.79,105.83,96.19,88.31,97.7,98.59,102.71,98.64,77.93,104.14,88.89,86.46,105.02,101.57,79.16,98.84,100.25,82.07,99.86,95.33,96.82,95.78,84.02,95.87,84.36,96.84,85.65,95.35,95.86,86.64,91.34,88.13,76.58,92.16,90.91,98.72,100.21,96.25,88.71,91.75,125,67,107.13,69.42,111.01,67.16,98.04,83.07,81.6,88.45,71.63,105.16,64.32,78.73,108.56,64.7,111.78,74.94,81.29,96.16,67.81,108.32,63.64,89.37,75.11,93.05,63.62,81.48,94.57,63.17,88.91,69.5,101.29,53.07,104.77,62.32,104.48,52.54,105.63,60.69,104.78,51.87,84.45,69.4,74.19,86.12,73.54,82.54,74.34,93.5,60.65,99.19,63.02,90.83,65.55,84.22,60.67,86.14,71.4,79.11,59.39,96,60.36,73.62,73.18,78.95,80.73,75.38,48.46,98.7,48.08,78.7,79.81,82.07,46.9,93.68,66.82,63.07,83.82,68.51,81.07,70.31,61.79,80.63,54.32,88.39,50.63,90.03,63.52,71.9,68.08,68.7,50.46,82.49,61.88,89.13,72.93,81,62.21,78.48,125,129.93,130.03,130.2,132.07,131.74,132.05,133.76,133.14,134.44,134.03,136.77,136.1,135,139.87,138.6,140.53,141.34,139.76,142.48,141.57,144.08,143.59,143.31,144.68,146.06,145.28,145.44,148.91,147.55,148.34,149.19,151.55,150,152.04,152.66,154.21,153.12,155,155.49,157.03,156,155.75,157.58,157.59,159.89,160.32,160.94,161.57,163.56,162.54,164.5,164.69,165.31,165.74,166.31,166.18,167.57,168.87,169.19,168.56,171.38,171.47,170.68,172.42,173.7,175.07,175.4,173.01,176.61,176.3,176.04,179.33,180.38,177.77,180.37,182.15,180.36,182.86,183.72,184.48,185.14,184.16,186.09,185.7,187.73,187.41,189.06,190.29,189.74,190.76,191.24,190.2,192.67,193.9,195.71,197,197.24,196.74,197.59,125,118.11,117,114.62,124.54,115.37,116.39,124.1,113.59,121.92,112.7,130.72,116.72,109.34,141.72,119.22,135.57,132.45,118.41,137.8,121.67,140.21,127.26,125.35,131.56,135.48,124.96,125.35,145.6,126.09,133.58,133.38,146.03,127.5,143.45,139.11,147.37,133.35,146.84,142.28,150.55,136.93,135.4,144.78,138.1,152.35,147.16,149.19,149.08,159.15,145.07,159.08,152.35,154.8,153.15,153.77,148.76,156.11,159.07,156.53,149.01,167.07,158.41,151.54,161.93,163.81,168.94,165.86,146.16,173.37,159.12,157.69,177.25,174.8,153.39,174.07,176.48,159.3,178.09,174.56,177.05,177.01,166.25,179.1,168.59,182.07,171.88,182.58,184.09,175.87,181.56,179.36,168.81,185.39,185.14,193.95,196.44,193.48,186.94,190.98,125,61,111.27,63.94,117.56,62.37,107.13,79.87,91.37,88.65,81.15,109.17,72.57,87.28,117.49,73.01,124.76,82.57,97.23,106.07,83.52,122.25,78.16,107.56,90.1,113.15,79.76,104.29,112.07,85.95,110.53,92.08,125.71,75.5,133.3,84,136.1,74.58,140.52,82.85,142.09,75,124.44,94.44,114.49,114.51,112.96,114.73,113.71,128.68,99.79,138.39,101.36,133.58,104.33,129.44,100.73,133.55,112.46,128.02,102.58,146.8,103.92,127.04,118.82,132.81,128.68,129.8,99.14,155.71,98.13,139.28,130.99,142.77,100.78,157.03,120.73,128.2,141.03,132.78,141.69,134.81,125.11,146.97,118.43,157.5,114.89,162.23,128.03,146.12,134.94,143.62,119.91,159.24,131.93,167.68,144.03,160.98,135.57,160.16,125,128.63,127.43,126.3,126.87,125.25,124.26,124.66,122.74,122.74,121.04,122.48,120.5,118.11,121.67,119.1,119.73,119.25,116.36,117.79,115.57,116.79,114.99,113.42,113.48,113.56,111.49,110.35,112.51,109.85,109.34,108.89,109.95,107.1,107.84,107.16,107.41,105.02,105.61,104.79,105.03,102.7,101.15,101.69,100.39,101.4,100.52,99.85,99.18,99.87,97.54,98.2,97.1,96.41,95.54,94.82,93.38,93.48,93.47,92.49,90.57,92.08,90.88,88.78,89.23,89.2,89.27,88.31,84.62,86.92,85.3,83.75,85.74,85.48,81.57,82.87,83.36,80.26,81.47,81.03,80.49,79.85,77.56,78.2,76.5,77.23,75.61,75.96,75.89,74.04,73.76,72.95,70.6,71.78,71.71,72.21,72.2,71.14,69.34,68.89,125,141.41,134.89,131.13,139.01,130.33,127.76,134.34,123.78,128.32,119.44,133.89,122.14,110.04,139.72,122.26,131.91,131.03,114.44,129.58,116.05,129.4,118.98,112.53,117.11,120.73,109.33,106,125.01,107.97,109.61,109.79,120.66,103.14,113.58,111.29,116.77,102.98,111.94,108.83,114.35,100.96,94.98,102.8,96.46,107.63,103.9,103.04,101.93,110.37,96.77,106.23,101.05,100.3,97.76,96.44,90.04,94.84,97.81,94.17,84.55,99.61,93.17,82.65,90.33,92.86,96.6,92.98,71.02,92.81,82.84,76.44,94.51,94.42,70.59,85.53,90.94,72.24,86.05,85.08,84.91,83.93,71.55,80.71,71.45,81,72.2,79.02,81.36,71.66,74.16,71.71,59.04,72.03,73.75,80.62,83.36,79.17,70.47,71.71,125,141.5,131.43,127.34,139.08,125.66,123.64,133.27,117.4,125.75,112.24,134.51,115.55,100.58,144.44,115.17,132.51,129.37,106.37,130.42,108.65,130.34,113.23,106.14,113.38,117.96,101.48,98.58,126.04,99.13,104.62,104.21,120.05,93.6,111.51,106.34,115.08,94.61,109.74,103.75,112.59,92.68,86.41,98.18,88.08,105.36,98.37,98.2,96.73,109.13,88.62,104.48,95.47,95.66,92.08,90.75,81.89,89.8,93.36,88.06,75.07,98,86.56,73.1,85.46,87.9,93.31,87.81,57.21,91.53,73.74,66.92,93.38,90.74,57.41,82.22,87.33,60.56,83.17,79.43,80,78.66,61.31,76.3,61.57,77.03,62.94,74.45,76.66,62.89,68.03,64.06,46.62,67.04,67.47,77.64,80.71,74.71,63.07,66.14,125,130.53,131.23,132,134.47,134.74,135.65,137.96,137.94,139.84,140.03,143.37,143.3,142.8,148.27,147.6,150.13,151.54,150.56,153.88,153.57,156.68,156.79,157.11,159.08,161.06,160.88,161.64,165.71,164.95,166.34,167.79,170.75,169.8,172.44,173.66,175.81,175.32,177.8,178.89,181.03,180.59,180.95,183.38,183.99,186.89,187.92,189.14,190.37,192.96,192.54,195.1,195.89,197.11,198.14,199.31,199.78,201.77,203.67,204.59,204.56,207.98,208.67,208.48,210.82,212.69,214.66,215.6,213.81,218.01,218.3,218.64,222.53,224.18,222.17,225.37,227.75,226.56,229.66,231.12,232.48,233.74,233.36,235.89,236.1,238.73,239.01,241.26,243.09,243.14,244.76,245.84,245.4,248.47,250.3,252.71,254.6,255.44,255.54,256.99,125,106.21,111.15,107.06,118.51,108.33,111.27,118.72,108.13,118.15,108.02,127.93,111.97,107.38,139.98,114.75,135.04,129.31,117.23,137.83,119.89,141.36,125.99,126.93,132.8,136.83,126.48,128.45,148.63,127.72,138.33,136.72,150.56,130.88,149.75,143.25,153.4,138.4,154.29,148.02,158.03,143.49,144.29,153.49,146.55,162.17,155.6,159.3,158.93,169.7,154.94,171.23,162.79,167.19,165.12,166.67,161.83,170.21,172.62,170.61,163.73,182.88,172.59,167.84,178.66,179.93,185.72,182.46,163.74,193.13,175.88,177.68,196.69,193.1,173,195.89,195.95,180.06,200.66,195.13,199.37,198.98,188.96,203.19,191.45,207.07,195.27,208.24,208.37,201.15,207.87,205.28,195.71,213.55,211.74,221.8,223.51,221.21,215.31,220.34,125,69.2,109.78,73.91,116.23,73.99,105.78,92.28,91.84,100.06,84.35,119.19,79.51,95.19,126.21,83.59,131.88,96.27,103.83,119.93,92.8,134.54,91.07,118.03,104.99,124.15,95.95,115.02,129.35,99.16,126.12,107.94,140.95,93.95,146.88,105.64,149.04,98.3,152.63,108.9,154.23,102.51,136.34,122.49,128.53,141.66,130.32,140.53,133.56,153.93,122.31,162.07,127.12,156.16,132.09,152,129.65,156.36,142.83,151.77,133.27,171.1,136.69,151.17,151.95,158.94,161.95,157.81,132.13,183.57,134.19,166.02,168.36,171.84,137.89,185.89,160.26,157.73,179.7,165.61,179.4,169.85,162.57,182.61,157.55,192.81,156.3,196.9,171.63,181.22,178.64,180.46,163.46,196.7,177.32,205.78,190.82,200.1,182.53,200.03,125,128.23,126.63,125.1,125.27,123.24,121.85,121.86,119.54,119.14,117.04,118.07,115.7,112.91,116.07,113.1,113.33,112.44,109.16,110.19,107.57,108.38,106.19,104.22,103.88,103.56,101.08,99.54,101.31,98.25,97.34,96.49,97.15,93.9,94.24,93.16,93.01,90.22,90.4,89.19,89.03,86.3,84.35,84.48,82.79,83.39,82.12,81.04,79.97,80.26,77.54,77.8,76.29,75.21,73.94,72.81,70.98,70.67,70.27,68.89,66.56,67.68,66.07,63.58,63.62,63.2,62.87,61.5,57.41,59.31,57.3,55.34,56.93,56.28,51.97,52.87,52.95,49.46,50.27,49.42,48.49,47.44,44.76,44.99,42.9,43.23,41.21,41.16,40.69,38.44,37.76,36.54,33.8,34.57,34.1,34.21,33.8,32.34,30.14,29.29,125,115.91,113.26,109.14,117.39,106.52,105.84,111.87,99.66,106.3,95.38,111.72,96.02,86.96,117.64,93.45,108.11,103.3,87.56,105.26,87.44,104.28,89.65,86.03,90.56,92.78,80.57,79.27,97.83,76.63,82.42,80.53,91.49,71.26,85.53,79.49,86.06,70.34,82.14,75.89,82.47,67.16,63.93,71.63,63.25,75.81,68.93,69.26,67.47,75.83,60.07,72.39,63.96,64.72,61.37,60.31,53.6,59.26,60.53,56.29,47.09,63.44,53.11,44.54,53.23,53.43,56.86,52.09,30.69,56.21,40.27,37.15,55.01,50.87,27.77,46.76,47.47,28.6,45.7,40.48,41.28,39.54,27.09,38.25,26.05,37.83,25.95,34.96,34.78,24.86,28.87,24.97,12.73,27.62,25.67,32.8,33.59,28.94,20.71,23.05,130,92.9,107.79,92.16,111.86,88.36,97.16,100.51,83.95,98.46,77.31,108.98,74.86,75.97,115.57,70.71,108.52,85.56,75.11,100.23,67.6,103.91,68.75,78.73,77.97,83.86,64.15,69.19,92.44,56.47,77.56,65,87.7,50.19,84.72,61.81,82.66,50.83,80.36,59.08,78.89,48.26,55.79,61.19,49.6,71.22,54.11,62.21,55.25,70.92,42.9,70.87,47.65,59.36,48.2,52.25,40.1,52.92,49.77,46.47,33.8,61.13,37.29,35.24,45.53,43.68,50.09,41.21,14.25,58.02,20.23,31.93,49.41,40.97,11.58,46.75,35.12,15.76,44.03,27.25,36.53,29.15,15.35,34.55,10.7,36.93,9.59,34.08,23.3,15.84,22.1,14.81,0.34,25.36,14.26,30.58,25.29,22.48,10.72,17.92,125.48,124.87,124.36,125.54,124.48,124.12,125.14,123.79,124.43,123.31,125.38,123.94,122.19,126.41,124.31,125.61,125.68,123.39,125.49,123.81,125.67,124.42,123.49,124.18,124.84,123.34,122.85,125.63,123.49,123.64,123.78,125.44,123.14,124.55,124.43,125.28,123.46,124.7,124.45,125.3,123.54,122.65,123.81,123.08,124.71,124.38,124.32,124.25,125.54,123.78,125.09,124.54,124.48,124.21,124.09,123.26,123.98,124.55,124.16,122.84,125,124.33,122.85,123.94,124.48,125.14,124.75,121.68,124.67,123.56,122.64,125.26,125.52,122.21,124.2,125.23,122.71,124.59,124.69,124.75,124.7,123.02,124.31,123.17,124.54,123.48,124.46,124.96,123.69,124.05,123.83,122.09,123.91,124.39,125.48,126.04,125.56,124.37,124.56,125,147.11,141.61,138.23,146.64,138.94,136.67,143.83,134.19,138.95,130.94,145.68,135.2,123.25,153.14,137.55,147.09,147.31,131.32,146.45,134.23,147.66,138.47,132.22,137.23,141.72,131.11,127.97,147.53,131.93,133.5,134.45,145.98,129.55,139.93,138.76,144.78,131.88,140.93,138.88,144.91,132.4,126.54,134.81,129.45,141.02,138.41,138.03,137.56,146.62,134.02,143.57,139.47,139.14,137.24,136.49,130.71,135.9,139.75,136.87,127.77,143.11,137.95,127.8,135.73,139.26,143.73,140.93,119.47,141.05,132.67,126.47,144.97,146.28,123.06,137.71,144.44,126.58,140.29,140.57,140.99,140.67,128.91,138.24,130.03,139.85,132.11,139.22,142.51,133.55,136.32,134.65,122.54,135.69,138.62,146.18,149.86,146.43,138.2,139.78,125,104.8,108.94,101.56,116.97,98.99,104.08,111.57,94.67,109.1,90.84,120.35,91.88,88.15,131.68,90.22,123.24,107.85,92.72,120.53,90.48,123.64,95.08,99.65,103.98,108.65,91.55,94.71,120.8,87.14,104.88,97.5,117.75,85.14,114.87,99.21,115.54,89.46,114.33,99.74,115.47,90.26,93.42,103.16,91.34,113.31,99.59,105.69,101.93,116.71,92.1,116.96,99.49,107.41,100.71,102.82,93.44,105.06,105.19,101.34,90.01,116.81,97.36,92.14,105.21,104.39,111.5,104.32,77.01,119.67,88.21,94.37,117.19,109.23,80.15,113.63,107.76,85.75,114.81,101.87,108.95,104.99,90.15,109.89,89.09,112.81,90.74,111.27,106.31,96.27,104.48,98.23,83.92,108.81,101.68,116.3,114.89,111.01,100.91,107.5,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,173.45,260,171.3,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,193.84,203.87,192.81,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,207.39,212.39,218.08,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,173.45,186.05,171.3,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,195.63,293.25,193.21,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,207.39,212.39,218.08,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,173.45,186.05,171.3,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,193.84,203.87,192.81,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,201.44,301.96,198.95,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,169.37,84.86,113.81,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,193.84,203.87,192.81,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,207.39,212.39,218.08,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,173.45,186.05,171.3,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,191.03,95.71,128.36,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,207.39,212.39,218.08,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06,125,155.61,152.43,149.72,158.92,152.73,151,159.02,150.82,156,149.27,164.53,155.94,144.36,174.53,161.74,171.34,173.13,158.15,173.32,163.01,176.71,169.33,163.53,169.16,174.95,165.61,162.83,183.21,169.77,171.41,173.45,186.05,171.3,181.7,182.15,189.1,177.56,186.84,186.33,193.24,182.09,176.48,185.4,181.54,193.78,192.87,193.33,193.84,203.87,192.81,202.61,200.08,200.5,199.59,199.72,194.89,200.74,205.9,204.25,195.97,211.77,208.53,199.07,196.7,98.55,132.17,216.55,195.92,217.22,211.13,205.43,224.56,227.97,205.83,220.09,228.7,212.24,225.88,227.99,229.42,230.12,219.35,228.97,222.32,232.64,226.5,234.15,238.86,231.09,234.32,233.83,222.62,236.03,240.75,249.49,254.63,252.41,244.98,247.06 ] m = [50, 51, 52, 53, 54] ap = [12, 13, 14, 15, 16] class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): upper = models.FloatField(label='What will be the highest next price?',max=1000000, min=0) lower = models.FloatField(label='What will be the lowest next price?',max=1000000, min=0) O1 = models.StringField(choices=['Option A', 'Option B']) O2 = models.StringField(choices=['Option A', 'Option B']) O3 = models.StringField(choices=['Option A', 'Option B']) O4= models.StringField(choices=['Option A', 'Option B']) O5 = models.StringField(choices=['Option A', 'Option B']) O6 = models.StringField(choices=['Option A', 'Option B']) O7 = models.StringField(choices=['Option A', 'Option B']) O8 = models.StringField(choices=['Option A', 'Option B']) O9 = models.StringField(choices=['Option A', 'Option B']) O10 = models.StringField(choices=['Option A', 'Option B']) Q1 = models.IntegerField(label=" Is talkative", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q2 = models.IntegerField(label=" Tends to find fault with others", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q3 = models.IntegerField(label="Does a thorough job", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q4 = models.IntegerField(label=" Is depressed, blue", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q5 = models.IntegerField(label="Is original, comes up with new ideas", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q6 = models.IntegerField(label="Is reserved", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q7 = models.IntegerField(label=" Is helpful and unselfish with others", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q8 = models.IntegerField(label="Can be somewhat careless", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q9 = models.IntegerField(label=" Is relaxed, handles stress well. ", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q10 = models.IntegerField(label="  Is curious about many different things", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q11 = models.IntegerField(label="Is full of energy", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q12 = models.IntegerField(label="  Starts quarrels with others", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q13 = models.IntegerField(label="Is a reliable worker", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q14 = models.IntegerField(label="Can be tense", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q15 = models.IntegerField(label=" Is ingenious, a deep thinker", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q16 = models.IntegerField(label="Generates a lot of enthusiasm", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q17 = models.IntegerField(label=" Has a forgiving nature", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q18 = models.IntegerField(label="Tends to be disorganized", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q19 = models.IntegerField(label="Worries a lot", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q20 = models.IntegerField(label="Has an active imagination", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q21 = models.IntegerField(label="Tends to be quiet", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q22 = models.IntegerField(label=" Is generally trusting", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q23 = models.IntegerField(label="Tends to be lazy", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q24 = models.IntegerField(label=" Is emotionally stable, not easily upset", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q25 = models.IntegerField(label="Is inventive", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q26 = models.IntegerField(label=" Has an assertive personality", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q27 = models.IntegerField(label="Can be cold and aloof", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q28 = models.IntegerField(label="Perseveres until the task is finished", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q29 = models.IntegerField(label=" Can be moody", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q30 = models.IntegerField(label="Values artistic, aesthetic experiences", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q31 = models.IntegerField(label="Is sometimes shy, inhibited", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q32 = models.IntegerField(label="Is considerate and kind to almost everyone", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q33 = models.IntegerField(label="Does things efficiently", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q34 = models.IntegerField(label="Remains calm in tense situations", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q35 = models.IntegerField(label=" Prefers work that is routine", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q36 = models.IntegerField(label="Is outgoing, sociable", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q37 = models.IntegerField(label=" Is sometimes rude to others", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q38 = models.IntegerField(label=" Makes plans and follows through with them", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q39 = models.IntegerField(label="Gets nervous easily", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q40 = models.IntegerField(label="Likes to reflect, play with ideas", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q41 = models.IntegerField(label="Has few artistic interests", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q42 = models.IntegerField(label=" Likes to cooperate with others", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q43 = models.IntegerField(label=" Is easily distracted", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) Q44 = models.IntegerField(label="Is sophisticated in art, music, or literature", choices=[1, 2, 3, 4, 5], widget=widgets.RadioSelectHorizontal) def spread(self): return self.upper - self.lower def equation(self): if (abs(self.upper - self.lower)) <= (Constants.m[(self.round_number) - 1]): return (1 - (abs(self.upper - self.lower)) / (Constants.m[(self.round_number) - 1])) else: return (1 - (abs(self.upper - self.lower)) / (abs(self.upper - self.lower))) def k(self): if self.lower > Constants.ap[(self.round_number) - 1] < self.upper and self.upper > self.lower: return 1 else: return 0