@startuml !include .\\BlocksLayer\Block.puml !include .\\BlocksLayer\BlockData.puml !include .\\BlocksLayer\BlockFactory.puml !include .\\BlocksLayer\CategoryData.puml !include .\\BlocksLayer\CodingBlock.puml !include .\\BlocksLayer\ElectricalBlock.puml !include .\\BlocksLayer\Environment.puml !include .\\BlocksLayer\MechanicalBlock.puml !include .\\BlocksLayer\MechanicalJoint.puml !include .\\Camera\CameraControl.puml !include .\\Camera\ViewCubeController.puml !include .\\CommandLayer\CommandDTO.puml !include .\\CommandLayer\CommandHandler.puml !include .\\CommandLayer\CommandManager.puml !include .\\InputSystem\BaseInputProvider.puml !include .\\InputSystem\InputModeManager.puml !include .\\InputSystem\InputProviderManager.puml !include .\\InputSystem\MobileInputProvider.puml !include .\\InputSystem\PCIntputProvider.puml !include .\\ModelCheckingSystem\BlockNode.puml !include .\\ModelCheckingSystem\BlocksGraph.puml !include .\\ModelCheckingSystem\BlocksMap.puml !include .\\ModelCheckingSystem\ModelCheckManager.puml !include .\\Movement Scripts\GizmoFMoveElement.puml !include .\\Movement Scripts\GizmoMoveElement.puml !include .\\Movement Scripts\GizmoRotateElement.puml !include .\\Movement Scripts\MultiSelectValidationCheck.puml !include .\\Movement Scripts\TransformManager.puml !include .\\SaveSystem\CommandSaveHandler.puml !include .\\SaveSystem\CommandSaveUtil.puml !include .\\SaveSystem\EnvironmentObserver.puml !include .\\Sockets\AttachableBlock.puml !include .\\Sockets\ISocket.puml !include .\\Sockets\JointBlock.puml !include .\\Sockets\JointPlacementHandler.puml !include .\\Sockets\SocketContainer.puml !include .\\Sockets\SocketIterator.puml !include .\\Sockets\SocketPoint.puml !include .\\UI\CategoryInherit.puml !include .\\UI\DropdownCategories.puml !include .\\Validators\IValidator.puml !include .\\Validators\PlacementValidator.puml !include .\\VirtualPlatform\CanvasPlatformUI.puml !include .\\VirtualPlatform\CanvasVirtualPlatformManager.puml !include .\\VirtualPlatform\PlatformUI.puml !include .\\VirtualPlatform\VirtualPlatformManager.puml !include .\\CommandLayer\Commands\CreateBlockCommand.puml !include .\\CommandLayer\Commands\DeleteBlockCommand.puml !include .\\CommandLayer\Commands\DeleteGroupCommand.puml !include .\\CommandLayer\Commands\ICommand.puml !include .\\CommandLayer\Commands\MoveBlockCommand.puml !include .\\CommandLayer\Commands\RotateBlockCommand.puml !include .\\InteractionLayer\Interactables\BaseInteractable.puml !include .\\InteractionLayer\Interactables\GrabInteractable.puml !include .\\InteractionLayer\Interactables\HoveredUI.puml !include .\\InteractionLayer\Interactables\IInteractable.puml !include .\\InteractionLayer\Interactables\UIInteractable.puml !include .\\InteractionLayer\Interactors\DeleteInteractor.puml !include .\\InteractionLayer\Interactors\RayInteractor.puml !include .\\InteractionLayer\Interactors\SnapSystem.puml !include .\\InteractionLayer\Interactors\TestCommandInteractor.puml !include .\\InteractionLayer\Managers\GhostManager.puml !include .\\InteractionLayer\Managers\InteractionManager.puml !include .\\InteractionLayer\Managers\SelectionManager.puml !include .\\InteractionLayer\Managers\SocketManagerChecker.puml !include .\\InteractionLayer\Managers\UIManager.puml !include .\\Sockets\ContainerInit\BlockContainerInit.puml !include .\\Sockets\ContainerInit\SimpleLinkContainerInit.puml !include .\\InteractionLayer\Managers\GhostExtensions\AxisMoveStrategy.puml !include .\\InteractionLayer\Managers\GhostExtensions\AxisRotateStrategy.puml !include .\\InteractionLayer\Managers\GhostExtensions\FreeMoveStrategy.puml !include .\\InteractionLayer\Managers\GhostExtensions\GhostMovementContext.puml !include .\\InteractionLayer\Managers\GhostExtensions\GhostStrategyHandler.puml !include .\\InteractionLayer\Managers\GhostExtensions\GhostStrategyTester.puml !include .\\InteractionLayer\Managers\GhostExtensions\IGhostMovementStrategy.puml @enduml