# ------------------------------------------------------------------------------
#  Copyright 2022 Upstream Data Inc                                            -
#                                                                              -
#  Licensed under the Apache License, Version 2.0 (the "License");             -
#  you may not use this file except in compliance with the License.            -
#  You may obtain a copy of the License at                                     -
#                                                                              -
#      http://www.apache.org/licenses/LICENSE-2.0                              -
#                                                                              -
#  Unless required by applicable law or agreed to in writing, software         -
#  distributed under the License is distributed on an "AS IS" BASIS,           -
#  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.    -
#  See the License for the specific language governing permissions and         -
#  limitations under the License.                                              -
# ------------------------------------------------------------------------------

from pyasic.miners.makes import WhatsMinerMake


class M30SPlusV10(WhatsMinerMake):
    raw_model = "M30S+ V10"
    expected_chips = 215
    expected_fans = 2


class M30SPlusV20(WhatsMinerMake):
    raw_model = "M30S+ V20"
    expected_chips = 255
    expected_fans = 2


class M30SPlusV30(WhatsMinerMake):
    raw_model = "M30S+ V30"
    expected_fans = 2


class M30SPlusV40(WhatsMinerMake):
    raw_model = "M30S+ V40"
    expected_chips = 235
    expected_fans = 2


class M30SPlusV50(WhatsMinerMake):
    raw_model = "M30S+ V50"
    expected_chips = 225
    expected_fans = 2


class M30SPlusV60(WhatsMinerMake):
    raw_model = "M30S+ V60"
    expected_chips = 245
    expected_fans = 2


class M30SPlusV70(WhatsMinerMake):
    raw_model = "M30S+ V70"
    expected_chips = 235
    expected_fans = 2


class M30SPlusV80(WhatsMinerMake):
    raw_model = "M30S+ V80"
    expected_chips = 245
    expected_fans = 2


class M30SPlusV90(WhatsMinerMake):
    raw_model = "M30S+ V90"
    expected_chips = 225
    expected_fans = 2


class M30SPlusV100(WhatsMinerMake):
    raw_model = "M30S+ V100"
    expected_chips = 215
    expected_fans = 2


class M30SPlusVE30(WhatsMinerMake):
    raw_model = "M30S+ VE30"
    expected_chips = 148
    expected_fans = 2


class M30SPlusVE40(WhatsMinerMake):
    raw_model = "M30S+ VE40"
    expected_chips = 156
    expected_fans = 2


class M30SPlusVE50(WhatsMinerMake):
    raw_model = "M30S+ VE50"
    expected_chips = 164
    expected_fans = 2


class M30SPlusVE60(WhatsMinerMake):
    raw_model = "M30S+ VE60"
    expected_chips = 172
    expected_fans = 2


class M30SPlusVE70(WhatsMinerMake):
    raw_model = "M30S+ VE70"
    expected_fans = 2


class M30SPlusVE80(WhatsMinerMake):
    raw_model = "M30S+ VE80"
    expected_fans = 2


class M30SPlusVE90(WhatsMinerMake):
    raw_model = "M30S+ VE90"
    expected_fans = 2


class M30SPlusVE100(WhatsMinerMake):
    raw_model = "M30S+ VE100"
    expected_fans = 2


class M30SPlusVF20(WhatsMinerMake):
    raw_model = "M30S+ VF20"
    expected_chips = 111
    expected_fans = 2


class M30SPlusVF30(WhatsMinerMake):
    raw_model = "M30S+ VF30"
    expected_chips = 117
    expected_fans = 2


class M30SPlusVG20(WhatsMinerMake):
    raw_model = "M30S+ VG20"
    expected_chips = 82
    expected_fans = 2


class M30SPlusVG30(WhatsMinerMake):
    raw_model = "M30S+ VG30"
    expected_chips = 78
    expected_fans = 2


class M30SPlusVG40(WhatsMinerMake):
    raw_model = "M30S+ VG40"
    expected_chips = 105
    expected_fans = 2


class M30SPlusVG50(WhatsMinerMake):
    raw_model = "M30S+ VG50"
    expected_chips = 111
    expected_fans = 2


class M30SPlusVG60(WhatsMinerMake):
    raw_model = "M30S+ VG60"
    expected_chips = 86
    expected_fans = 2


class M30SPlusVH10(WhatsMinerMake):
    raw_model = "M30S+ VH10"
    expected_chips = 64
    expected_fans = 2


class M30SPlusVH20(WhatsMinerMake):
    raw_model = "M30S+ VH20"
    expected_chips = 66
    expected_fans = 2


class M30SPlusVH30(WhatsMinerMake):
    raw_model = "M30S+ VH30"
    expected_chips = 70
    expected_fans = 2


class M30SPlusVH40(WhatsMinerMake):
    raw_model = "M30S+ VH40"
    expected_chips = 74
    expected_fans = 2


class M30SPlusVH50(WhatsMinerMake):
    raw_model = "M30S+ VH50"
    expected_chips = 64
    expected_fans = 2


class M30SPlusVH60(WhatsMinerMake):
    raw_model = "M30S+ VH60"
    expected_chips = 66
    expected_fans = 2
