!      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ None"#=>?@AHMSVXx^6 apecs-physics(What entity did this query connect with? apecs-physics9The closest point on the shape's surface (in world space) apecs-physics!The distance to the queried point apecs-physicsBThe gradient of the distance function. This should be similar to 'pqPoint'/'pqDistance'- but accurate even for very small distances. apecs-physics(What entity did this query connect with? apecs-physics2The point that the segment impacted with the shape apecs-physics.The normal of the surface that the segment hit apecs-physicsThe normalized distance along the query segment in the range `[0, 1]`. Multiply it by the length of the segment to get the distance away the shape is.  apecs-physicsA  E determines what types of collisions a callback handles. Also see  apecs-physicsA N can have a . 0s are used by callbacks for filtering, also see  . The difference between  and ; is that a ;h determines whether two shapes in the physics engine collide, or pass through one another, whereas a k determines what callback is called. In general, if you don't want any special checks to happen, use ;. apecs-physicsTA callback called when two bodies start touching for the first time. If it returns I, the physics engine will process the collision normally. If it returns , the physics engine will ignore the collision entirely. apecs-physicsIA callback called when two bodies have just stopped touching. This will always be called if ' is, regardless of the return value of . apecs-physics`A callback called when two bodies are touching during a physics step. If this function returns , the collision will be processed normally. If it returns 'False, then the physics engine will stop processing the collision for this step. apecs-physics/A callback called when two bodies are touching after the response to the collision has been processed. This means that you can determine the collision impulse or kinetic energy in this callback, if you need that for processing. apecs-physics4Maintains a fixed distance between two anchor points apecs-physicsA PinJoint" with minimum and maximum distance  apecs-physics3Creates a pivot point at the given world coordinate! apecs-physics3Creates a pivot point at the given body coordinates" apecs-physicsvThe first two vectors are the start and end of the groove on body A, the third argument is the anchor point on body B.# apecs-physicsQSpring between two anchor points, with given rest length, stiffness, and damping.$ apecs-physics<Rotary sping, with given rest angle, stiffness, and damping.% apecs-physics$Joint with minimum and maximum angle& apecs-physicsDRathet joint with given phase and ratchet (distance between clicks).( apecs-physics(Keeps relative angular velocity constant apecs-physics!Collision parameter, global value apecs-physics!Collision parameter, global value apecs-physics'Sleep idle time threshold, global value apecs-physics2Speed threshold to be considered idle, and a candidate for being put to sleep. Global value. Bodies with a speed less than this will not be simulated until a force acts upon them, which can potentially lead to large gains in performance, especially if there's a lot of inactive bodies in the simulation. apecs-physicsDaming factor, global value5 apecs-physics"Gravity force vector, global value7 apecs-physics+Number of iterations per step, global value9 apecs-physics%A bitmask used for collision handling; apecs-physicsXCollision Filters determine what shapes this shape collides with. Shapes in the same =m will never collide with one another. This is used to ignore collisions between parts on a complex object.>E is a bitmask that determines what categories a shape belongs to. ?G is a bitmask that determines what categories it collides with. See  Khttps://chipmunk-physics.net/release/ChipmunkLatest-Docs/#cpShape-Filtering for more information.B apecs-physicsThe friction of an object is a measure of how much it resists movement. Shapes with high friction will naturally slow down more quickly over time than objects with low friction.See  &https://en.wikipedia.org/wiki/Friction for more information.D apecs-physicsUThe density of a shape is a measure of how much mass an object has in a given volume.@The physics engine lets you set this, and it will calculate the F and other components for you.See  %https://en.wikipedia.org/wiki/Density for more information.F apecs-physicsThe mass of a shape is technically a measure of how much resistance it has to being accelerated, but it's generally easier to understand it as being how "heavy" something is.@The physics engine lets you set this, and it will calculate the D and other components for you. See  "https://en.wikipedia.org/wiki/Mass for more information.H apecs-physicsjThe elasticity of a shape. Higher elasticities will create more elastic collisions, IE, will be bouncier.See  2https://en.wikipedia.org/wiki/Elasticity_(physics) for more information.J apecs-physicsIf a body is a Jt, it exists only to trigger collision responses. It won't phyiscally interact with other bodies in any way, but it will# cause collision handlers to run. L apecs-physicsBA convex polygon. Consists of a list of vertices, and a radius.N apecs-physics<Shape component. Adding a shape to an entity that has no Body is a noop.P apecs-physicsThe  Constraint!s belonging to a body. Read-only.R apecs-physicsThe Shape!s belonging to a body. Read-only.T apecs-physics Where the BodyP's center of gravity is, in body-local coordinates. Can be read and written to.Z apecs-physicsThe moment of inertia of the BodyH. This is basically the body's tendency to resist angular acceleration.\ apecs-physics)A component representing the mass of the Body overall.^ apecs-physics(A component used to apply a torque to a BodyQ. The torque is applied to the entire body at once. This component is reset to  0 _ after every simulation step, so it is mainly used to apply a torque as opposed to being read.` apecs-physics'A component used to apply a force to a BodyU. The force is applied to the body's center of gravity. This component is reset to  Vec 0 0 ` after every stimulation step, so it is mainly used to apply a force as opposed to being read.b apecs-physicsA subcomponent of Body4 representing where it is going in world coordinatesd apecs-physicsA subcomponent of Body/ representing where it is in world coordinates.f apecs-physicsAdded to a component to add it to the physics space. Deleting it will also delete all associated shapes and constraints. A body has a number of subcomponents: Position, Velocity, Force, Torque, BodyMass, Moment, Angle, AngularVelocity, and CenterOfGravityt. These components cannot be added or removed from an entity, but rather are present as long as the entity has a Body.j apecs-physicsRType synonym indicating that a vector is expected to be in world-space coordinatesk apecs-physicsQType synonym indicating that a vector is expected to be in body-space coordinates apecs-physicsVector type used by the libraryl apecs-physicsPUninhabited, should be added to the world as a component to add a physics space.  ('&%$#"! )*+,-./0123456789:;<?>=@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefihgjklNone"#%=>?@AHMVXlm{mnNone%=>?@AHVXlm~q apecs-physics&Makes a bitmask from a list of indicess apecs-physics4A box with the given height, width, and center point.opqrsNone"#%=>?@AHMVXklmstNonev apecs-physics Map a function over all verticesw apecs-physicsKTranslates all vertices. The name shift is to prevent collisions with gloss apecs-physics$Centered rectangle with a given size apecs-physics&Rectangle with a given origin and size apecs-physics&Rectangle with origin 0 and given size apecs-physicspSplit a shape into its edges. Will return no edges for points, but returns 2 for a line (in opposite directions) apecs-physics<A set of lines forming a grid. Returns (r + c + 2) segments.uvwxyz{|}~None"#%=>?@AHMVXklmNone"#%=>?@AHMVXklm0      !"#$%&'()*+, None"#%=>?@AHMVXklmZ apecs-physicsAdd an action that will be executed after the physics engine is done processing the current step. Since you generally cannot modify the physics space while the engine is handling collisions, B is the primary way of making changes to the physics space with a k in a safe manner. Please note that you should only use this function for callbacks in conjunction with a !None-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijk  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~l5678mnfghidebcXYVW`a\]Z[TU^_RSPQLMNOFGDEJKBCHI@A;<=>?9:opqrs)* !"#$%&'(3412/0+,-.  tuvwxyz{|}~kjl      !"#$%&'()*+,-.//0011223344556677889:;<<==>>??@@AABBCCDDEEFFGGHHIIJJKKLLMMNNOPQRSTUVWXYZ[\]^_`abcdefghijkl m n o p q rstuvwxywxz{|}~ !"{|}~                      ! " # $ % &' &' () (* (+ (, -. -. -/ -0 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -: -;  <=>?=>?=@ABCDBCEBCFBCGBCHBCIBCJBCJBCKBCLBCMBNOBNPBNQRSTU)apecs-physics-0.4.4-zOuShfswdaCgJXDcnV6mE Apecs.PhysicsApecs.Physics.TypesApecs.Physics.SpaceApecs.Physics.ShapeApecs.Physics.QueryApecs.Physics.GeometryApecs.Physics.ConstraintApecs.Physics.BodyApecs.Physics.CollisionPointQueryResultpqShapepqPoint pqDistance pqGradient CollisioncollisionNormalcollisionBodyAcollisionBodyBcollisionShapeAcollisionShapeBCollisionSourceWildcardBetween CollisionTypeCollisionHandlersourcebeginCB separateCB preSolveCB postSolveCB PostSolveCB PreSolveCB SeparateCBBeginCBConstraintTypePinJoint SlideJoint PivotJoint PivotJoint2 GrooveJoint DampedSpringDampedRotarySpringRotaryLimitJoint RatchetJoint GearJoint SimpleMotor ConstraintImpulse CollideBodies ErrorBiasMaxBiasMaxForceGravity IterationsBitmaskCollisionFilter filterGroupfilterCategories filterMaskSurfaceVelocityFrictionDensityMass ElasticitySensorConvexShapeConstraintList ShapeListCenterOfGravityAngularVelocityAngleMomentBodyMassTorqueForceVelocityPositionBody DynamicBody KinematicBody StaticBodyWVecBVecPhysics stepPhysics earthGravitymaskAllmaskNonemaskList defaultFilterboxShape pointQueryvertices mapVerticesshift getRadius setRadiuscCirclezCircleoCirclehLinevLine cRectangle oRectangle zRectangletoEdges gridLinesdefaultHandler mkBeginCB mkSeparateCB mkPreSolveCB mkPostSolveCBaddPostStepCallbacksqShape sqImpactPointsqImpactNormal sqImpactAlphaghc-prim GHC.TypesTrueFalse CollisionBias CollisionSlop SleepIdleTimeIdleSpeedThresholdDampingVecSegmentQueryResultCollisionPropertiescollisionSurfaceVelocitycollisionFrictioncollisionElasticity PostSolveFunc PreSolveFunc SeparateFunc BeginFuncSpacePtrPtrMapIOMapRecordrecValrecPtr BodyRecord brConstraintsbrShapesbrBodybrPtrSpacespacePtr spHandlers spConstraintsspShapesspBodiesFrnVecFrnSpaceCollisionGroupphycsCtxphycsTypesTablecast inline_c_ffi_6989586621679128802 inline_c_ffi_6989586621679128811 inline_c_ffi_6989586621679128855 inline_c_ffi_6989586621679128867 inline_c_ffi_6989586621679128876 inline_c_ffi_6989586621679128893 inline_c_ffi_6989586621679128903 inline_c_ffi_6989586621679128916newSpaceexplStepPhysics getGravity setGravity getIterations setIterations inline_c_ffi_6989586621679139893 inline_c_ffi_6989586621679139921 inline_c_ffi_6989586621679139942 inline_c_ffi_6989586621679139955 inline_c_ffi_6989586621679139964 inline_c_ffi_6989586621679139976 inline_c_ffi_6989586621679139985 inline_c_ffi_6989586621679139997 inline_c_ffi_6989586621679140006 inline_c_ffi_6989586621679140018 inline_c_ffi_6989586621679140027 inline_c_ffi_6989586621679140039 inline_c_ffi_6989586621679140048 inline_c_ffi_6989586621679140060 inline_c_ffi_6989586621679140069 inline_c_ffi_6989586621679140078 inline_c_ffi_6989586621679140094 inline_c_ffi_6989586621679140103 inline_c_ffi_6989586621679140112 inline_c_ffi_6989586621679140121 inline_c_ffi_6989586621679140140 inline_c_ffi_6989586621679140149 inline_c_ffi_6989586621679140161newShape destroyShape getSensor setSensor getElasticity setElasticitygetMasssetMass getDensity setDensity getFriction setFrictiongetSurfaceVelocitysetSurfaceVelocity getFilter setFiltergetCollisionTypesetCollisionType inline_c_ffi_6989586621679177583 inline_c_ffi_6989586621679177620 inline_c_ffi_6989586621679217046 inline_c_ffi_6989586621679217058 inline_c_ffi_6989586621679217067 inline_c_ffi_6989586621679217080 inline_c_ffi_6989586621679217089 inline_c_ffi_6989586621679217098 inline_c_ffi_6989586621679217114 inline_c_ffi_6989586621679217123 inline_c_ffi_6989586621679217132 inline_c_ffi_6989586621679217148 inline_c_ffi_6989586621679217157 inline_c_ffi_6989586621679217170 inline_c_ffi_6989586621679217179 inline_c_ffi_6989586621679217192 inline_c_ffi_6989586621679217201 inline_c_ffi_6989586621679217210 inline_c_ffi_6989586621679217226 inline_c_ffi_6989586621679217235 inline_c_ffi_6989586621679217248 inline_c_ffi_6989586621679217257 inline_c_ffi_6989586621679217270 inline_c_ffi_6989586621679217279 inline_c_ffi_6989586621679217292 inline_c_ffi_6989586621679217301 inline_c_ffi_6989586621679217310 inline_c_ffi_6989586621679217326newBody setBodyType getBodyType destroyBody getPosition setPosition getVelocity setVelocitygetAnglesetAnglegetAngularVelocitysetAngularVelocitygetForcesetForce getBodyMass setBodyMass getMoment setMoment getTorque setTorquegetCenterOfGravitysetCenterOfGravity mtl-2.2.2Control.Monad.Reader.Classask"apecs-0.9.0-KrWVStwNIubIWm1gahmmVmApecs.TH makeWorldmakeWorldAndComponents Apecs.UtilrunGC newEntityglobal EntityCounter Apecs.SystemcfoldM_cfoldMcfoldcmapM_cmapMcmap$~modifydestroyexists$=setgetrunWith runSystemApecs.ComponentsNot Apecs.StoresMapUniqueGlobalCache Apecs.CoreEntityunEntitySystemTunSystemSystem ComponentStorageHasgetStoreexplInitGetSetMembersDestroyasksbase Data.ProxyProxyControl.Monad.IO.ClassliftIO"linear-1.21-6UZbmlwwkhnDgLeBbH053d Linear.V2crossZunangleangleperpey_yxV2R2_y_xy Linear.V1exR1_xtransformers-0.5.5.0Control.Monad.Trans.Classlift