<commit_before>module Model exposing (..)

import Math.Vector3 exposing (Vec3, vec3)
import Math.Vector3 as V3
import Time exposing (..)
import Task exposing (Task)
import Window
import Orientation exposing (Orientation)
import Bag
import Body exposing (Body, Oriented)
import Camera exposing (Camera, Shot)
import Camera.Util exposing (toCamera)
import Ground exposing (Ground)
import Gamepad exposing (Gamepad, gamepads)


type Msg worldMsg
    = KeyChange (Keys -> Keys)
    | MouseMove MouseMovement
    | GamepadUpdate (List Gamepad)
    | LockRequest Bool
    | LockUpdate Bool
    | Animate Time
    | Resize Window.Size
    | WorldMessage worldMsg


type alias World =
    { bodies : List Body
    , ground : Ground
    }


type alias Motion =
    { position : Vec3
    , velocity : Vec3
    , orientation : Orientation
    }

type alias Player =
    { camera : Camera
    , shot : Maybe Shot
    , rideKey : Maybe Bag.Key
    , rideLabel : String
    , focusKey : Bag.Key
    , cameraVR : Bool
    }


type alias Vehicle =
    { init : Motion -> Motion
    , move : Maybe Vec3 -> EyeLevel -> Inputs -> Motion -> Motion
    }


type Eye
    = OneEye
    | LeftEye
    | RightEye


type alias EyeLevel =
    Vec3 -> Float


eyeLevel : Float
eyeLevel =<commit_msg>Remove Vehicle type<commit_after>module Model exposing (..)

import Math.Vector3 exposing (Vec3, vec3)
import Math.Vector3 as V3
import Time exposing (..)
import Task exposing (Task)
import Window
import Orientation exposing (Orientation)
import Bag
import Body exposing (Body, Oriented)
import Camera exposing (Camera, Shot)
import Camera.Util exposing (toCamera)
import Ground exposing (Ground)
import Gamepad exposing (Gamepad, gamepads)


type Msg worldMsg
    = KeyChange (Keys -> Keys)
    | MouseMove MouseMovement
    | GamepadUpdate (List Gamepad)
    | LockRequest Bool
    | LockUpdate Bool
    | Animate Time
    | Resize Window.Size
    | WorldMessage worldMsg


type alias World =
    { bodies : List Body
    , ground : Ground
    }


type alias Motion =
    { position : Vec3
    , velocity : Vec3
    , orientation : Orientation
    }

type alias Player =
    { camera : Camera
    , shot : Maybe Shot
    , rideKey : Maybe Bag.Key
    , rideLabel : String
    , focusKey : Bag.Key
    , cameraVR : Bool
    }


type Eye
    = OneEye
    | LeftEye
    | RightEye


type alias EyeLevel =
    Vec3 -> Float


eyeLevel : Float
eyeLevel =
{'fraction_non_alphanumeric': 0.07847996695580339, 'fraction_numerical': 0.007021891780256092, 'mean_word_length': 2.8322784810126582, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5783948', 'n_tokens_mistral': 775, 'n_tokens_neox': 705, 'n_words': 251}