Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Embedded code 😳 #690

Merged
merged 191 commits into from
Apr 18, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
191 commits
Select commit Hold shift + click to select a range
6a4085c
Updated
YnotCode Nov 15, 2023
a7470d9
Merge branch 'embedded' into science-kevin-tony
YnotCode Nov 15, 2023
cc0bb54
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Dec 6, 2023
1eea985
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Dec 6, 2023
550b089
x
YnotCode Jan 19, 2024
3a7c5ec
SomethingMerge branch 'embedded' of github.com:umrover/mrover-ros int…
YnotCode Jan 24, 2024
9deef34
SMerge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Jan 31, 2024
4c8bce0
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Feb 2, 2024
cfa6e6c
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Feb 7, 2024
7f33cb7
brushless testing
umroverPerception Feb 12, 2024
9b657eb
set linear to rotation ratio to 1
umroverPerception Feb 12, 2024
21dd0d9
Comment out ADC updates, make it flash white LED on startup, and fix …
tabiosg Feb 12, 2024
65d24be
working de tests
umroverPerception Feb 12, 2024
af21e83
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
umroverPerception Feb 12, 2024
86e0971
Update esw.yaml for motors group information mutlipliers - these valu…
tabiosg Feb 12, 2024
1d97094
Add multipliers to config
tabiosg Feb 12, 2024
531aae2
Remove default task
tabiosg Feb 13, 2024
91e08a6
Change heater watchdog from 3 to 1 second
tabiosg Feb 13, 2024
84c48c1
Add heater science test bridge
tabiosg Feb 13, 2024
d01b223
No idea if dirt sensor node works
tabiosg Feb 13, 2024
85c458a
???idk ask isabel
umroverPerception Feb 14, 2024
8d04bbe
Changed the brushless test bridge to run seperate functions; Guthrie …
artyom-boyarov Feb 14, 2024
6cfaf50
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
artyom-boyarov Feb 14, 2024
3de52c4
Science
tabiosg Feb 14, 2024
7eff84f
Merge branch 'embedded' of https://github.com/umrover/mrover-ros into…
tabiosg Feb 14, 2024
8b3cd6b
Change science firmware
tabiosg Feb 15, 2024
657cd8e
Merge branch 'embedded' of https://github.com/umrover/mrover-ros into…
tabiosg Feb 15, 2024
e471c0a
Change bridge
umroverPerception Feb 15, 2024
2d32ef4
fix can parameters
wisabel0 Feb 16, 2024
aa04f18
Calibrate thermistor to 24.7C
wilsonchen02 Feb 18, 2024
542f6d4
WIP testing spectral code
Polishdudealan Feb 18, 2024
68fe4af
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
Polishdudealan Feb 18, 2024
6cb2140
Work in progress heater and thermistor code. Update and simplify spec…
Polishdudealan Feb 18, 2024
2708874
Change ioc to sample for higher accuracy and remove magic number!
tabiosg Feb 22, 2024
b22209f
Change heater and test
umroverPerception Feb 22, 2024
e34e64a
enable auto shutoff
tabiosg Feb 22, 2024
81842ae
Update spectral code. Add virtual read/write functions. Not tested yet.
Polishdudealan Feb 23, 2024
6fcd82b
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
Polishdudealan Feb 23, 2024
4755873
Increase PDLB ADC sampling cycle
tabiosg Mar 5, 2024
b551b26
Fix CAN filters
owenpark8 Mar 6, 2024
7c9bd47
Fix poll_status_reg status check
wilsonchen02 Mar 8, 2024
29e64d1
Change spectral initialize code and re-enable PDB adc sensor update code
tabiosg Mar 10, 2024
a5cce93
Remove unnecessary return
tabiosg Mar 10, 2024
b48a1eb
Fix CAN filters to correctly check source in identifier
owenpark8 Mar 12, 2024
edb0205
Commit merge
tabiosg Mar 12, 2024
0555027
Make changes
tabiosg Mar 12, 2024
1342556
add filter to science and pdlb ioc
wisabel0 Mar 12, 2024
99921d7
Update science code and re-enable all tasks
tabiosg Mar 13, 2024
c8393b5
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Mar 13, 2024
4802b0f
adjustDE code
kushagragoenka123 Mar 13, 2024
bd66c99
Allow ADC and current sensors to work for the PDLB!
tabiosg Mar 14, 2024
95954d1
Add code for thermistor code
tabiosg Mar 14, 2024
9d6ab08
Make assumption that it is 47k ohm resistor
tabiosg Mar 14, 2024
2c25f1b
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Mar 14, 2024
236105c
Arm translator bridge builds
umroverPerception Mar 14, 2024
80dddc6
Added custom error handling and changed reboot_spectral to reboot_i2c
YnotCode Mar 14, 2024
4fd8e97
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
YnotCode Mar 14, 2024
c72cdb2
Fixed build errors
YnotCode Mar 14, 2024
70f8642
Changed compiler setting to allow exceptions
YnotCode Mar 15, 2024
d69842d
Refactor code to use optionals
Polishdudealan Mar 15, 2024
f2c80f9
Fix merge conflicts
Polishdudealan Mar 15, 2024
65cf219
Small fix in spectral code
Polishdudealan Mar 15, 2024
edcfa80
fix issues in arm translator bridge - builds
umroverPerception Mar 15, 2024
be3be3f
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
umroverPerception Mar 15, 2024
b81a75a
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
Polishdudealan Mar 15, 2024
dd52cb4
Remove spectral.c
tabiosg Mar 17, 2024
4acfa88
Allow project to build
tabiosg Mar 18, 2024
bfb3463
Remove duplicate
umroverPerception Mar 18, 2024
bb096f5
Update test bridge to include all MOSFET devices
umroverPerception Mar 18, 2024
7a7a3a2
Remove spectral task
tabiosg Mar 19, 2024
3d19d73
add adjust message for joint DE
wisabel0 Mar 18, 2024
eff122f
Use eigen
qhdwight Mar 19, 2024
22d78bd
joint-de
qhdwight Mar 19, 2024
5e16203
Removed exception handling
YnotCode Mar 19, 2024
a2c224c
Boingus
qhdwight Mar 20, 2024
6406090
COMPILE
qhdwight Mar 20, 2024
48357c3
Remove lanuching nodelet manager
qhdwight Mar 20, 2024
39fd08c
Merge remote-tracking branch 'origin/joint-de' into embedded
qhdwight Mar 20, 2024
9e7f4b0
Cleanup
qhdwight Mar 20, 2024
3826fd9
Refactor sa_translator_bridge code
artyom-boyarov Mar 22, 2024
6f93102
Refactored sa_translator_bridge to make it simular to arm_translator_…
artyom-boyarov Mar 22, 2024
436a8d6
Added linear_joint_translation
artyom-boyarov Mar 22, 2024
85023c2
Tested Spectral code on all 3 sites. Change TReceive to 1 byte. Reins…
Polishdudealan Mar 22, 2024
ff44278
polling correct spectral register now
wisabel0 Mar 23, 2024
e0b9557
oopsies :3 i broke all code! spectral ROS messages changed - still ne…
tabiosg Mar 23, 2024
c559859
Fix spectral data
tabiosg Mar 23, 2024
63f17ba
Make firmware build
tabiosg Mar 24, 2024
01f7b19
Fix spectral make it read calibrated messages uwu :3
tabiosg Mar 24, 2024
13d3796
Update error statement too
tabiosg Mar 24, 2024
1066b83
Correct number of channels published
tabiosg Mar 24, 2024
b75e61c
implemented abs encoder through moteus register protocol
edurso Mar 24, 2024
b26d639
new joint_c velocity and position limits
umroverPerception Mar 24, 2024
b101f6a
Change to floats properly
tabiosg Mar 24, 2024
9fdf269
Merge branch 'embedded' of https://github.com/umrover/mrover-ros into…
tabiosg Mar 24, 2024
25e618a
I have fixed the spectral code
tabiosg Mar 26, 2024
50137c4
Remove some comments and fix bug when trying to access value of nullopt
tabiosg Mar 26, 2024
7c3b598
add absolute encoder velocity for joint de
edurso Mar 26, 2024
4dac752
Make code a bit more readable
tabiosg Mar 26, 2024
ba4b70d
Fix bug that prevented code from escaping infinite loop of not being …
tabiosg Mar 27, 2024
90a547d
one line change to change heater shutoff temp to 50celsius from 65
tabiosg Mar 27, 2024
1cfe1f4
Merge branch 'embedded' of https://github.com/umrover/mrover-ros into…
tabiosg Mar 27, 2024
20f834e
Merge remote-tracking branch 'origin/integration' into embedded
umroverPerception Mar 27, 2024
8451a43
Merge remote-tracking branch 'origin/embedded' into embedded
umroverPerception Mar 27, 2024
d46337b
Delete delete
umroverPerception Mar 27, 2024
1e6633d
Remove old
umroverPerception Mar 27, 2024
9654216
Merge
umroverPerception Mar 27, 2024
d9b46b9
Revert xacro
umroverPerception Mar 27, 2024
b794f7d
Fix compile error???
umroverPerception Mar 27, 2024
a7696e5
Fr this time
qhdwight Mar 27, 2024
415eb32
Testing changes
umroverPerception Mar 27, 2024
3229c1b
Merge remote-tracking branch 'origin/integration' into embedded
umroverPerception Mar 28, 2024
33e87b8
Fix compile error
umroverPerception Mar 28, 2024
640b720
de testing
umroverPerception Mar 29, 2024
b0d5140
lower joint a velocity
umroverPerception Mar 29, 2024
0b9b615
Thermistor Auto Shutoff is now configurable (#672)
tabiosg Mar 29, 2024
6bd5ff3
update brushless limit switch logic for aux2
wisabel0 Apr 5, 2024
48b0e49
Yay comment
tabiosg Apr 7, 2024
cee575c
Merge remote-tracking branch 'origin/integration' into embedded
umroverPerception Apr 7, 2024
25322bc
Merge remote-tracking branch 'origin/embedded' into embedded
umroverPerception Apr 7, 2024
97ab844
joint A can do low precision position from tview
umroverPerception Apr 7, 2024
25e1fc7
UNTESTED - joint c config changes
tabiosg Apr 8, 2024
812463d
Disable joint b reconfig
umroverPerception Apr 8, 2024
1ade2d5
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
umroverPerception Apr 8, 2024
793a50b
Avoid conversion sometimes
tabiosg Apr 8, 2024
c1add64
Merge branch 'embedded' of github.com:umrover/mrover-ros into embedded
tabiosg Apr 8, 2024
2c023d7
Remove hard code for joint A
tabiosg Apr 8, 2024
af06f4d
Add joint a max torque in esw.yaml
tabiosg Apr 8, 2024
10717f0
Add defaults for limit switches to make it easier to test when moteus…
tabiosg Apr 9, 2024
db543c0
Update project to enable pull up limit switches
tabiosg Apr 9, 2024
f51e9f6
Fix joint b limit switch settings
umroverPerception Apr 8, 2024
dd1e6b6
Merge branch 'integration' into embedded
tabiosg Apr 9, 2024
46eb84c
Change min and max position for joint c
tabiosg Apr 9, 2024
ba4c1cb
Make mAvoidConversionToRevolutions usable by brushed too instead of b…
tabiosg Apr 9, 2024
4ce91af
Merge remote-tracking branch 'origin/integration' into embedded
qhdwight Apr 9, 2024
e50a995
Update dawn pointer
qhdwight Apr 9, 2024
51b6ec7
Make compile on mac lol, not working tho
qhdwight Apr 9, 2024
c3b0a8e
Constexpr string view instead of string
qhdwight Apr 9, 2024
68546bf
update DE to assume motei are aware of gearing
wisabel0 Apr 9, 2024
826313a
Up p, set max velocity
umroverPerception Apr 10, 2024
6a30821
New arch for controllers
qhdwight Apr 10, 2024
24640d4
Merge remote-tracking branch 'origin/embedded' into embedded
qhdwight Apr 10, 2024
4ff1633
Add better joint c config
umroverPerception Apr 10, 2024
041e63f
Clean up config
umroverPerception Apr 10, 2024
87404f5
Remove is linear
qhdwight Apr 10, 2024
d187071
Fix typo in de
qhdwight Apr 10, 2024
0b4324b
Wizardry
qhdwight Apr 10, 2024
bce1da6
Oops
qhdwight Apr 10, 2024
644d9f8
Adjust joint C esw.yaml
umroverPerception Apr 10, 2024
11dff5f
Adjust joint A min and max vel
umroverPerception Apr 10, 2024
38ae540
Always send aux
qhdwight Apr 10, 2024
7b4a4cf
Convert pos/vel correctly, fix bug in units library
umroverPerception Apr 10, 2024
c009d00
Commit joint A config with larger D to help with velocity ctrl
umroverPerception Apr 10, 2024
d7cd3d1
Joint de 1 working, switching to de 0
umroverPerception Apr 11, 2024
e07ea01
Update config
qhdwight Apr 11, 2024
b9e78ad
Fix some units lib issues
qhdwight Apr 12, 2024
0225aec
Update
qhdwight Apr 12, 2024
e4b2cbc
Move offsets for joint DE to firmware
Apr 12, 2024
7983488
Add updated de 0 and 1 abs stuff, remove offsets in ros, fix annoying…
qhdwight Apr 12, 2024
977b8f6
WORKING POS!
qhdwight Apr 12, 2024
0ed86bf
Fix xbox controllers for new basestation laptop on chromium
Apr 12, 2024
6d4e07c
Publish to torque as brushless and change DE0/1 torques
Apr 13, 2024
094af8b
fix allen key voltage
wisabel0 Apr 13, 2024
0848e9b
invert sign
Apr 13, 2024
7b6c91c
Make DE follow IK conventions
Apr 13, 2024
a65126b
OK joint de 1 coudl be better
Apr 13, 2024
25f3c56
Update torque for joint DE and PID constants
Apr 13, 2024
7e9f303
only publish/subscribe to de_pitch/roll joint data
wisabel0 Apr 13, 2024
4abb2af
Merge remote-tracking branch 'refs/remotes/origin/embedded' into embe…
wisabel0 Apr 13, 2024
f9abce9
Revert "only publish/subscribe to de_pitch/roll joint data"
Apr 13, 2024
76f7b3d
New translator code
qhdwight Apr 13, 2024
417c7ed
Add extra checks
qhdwight Apr 13, 2024
3d189b2
Add joint state publisher
qhdwight Apr 14, 2024
a8c1fb4
Correct IK convention for DE01
Apr 14, 2024
72f390a
Correct settings for chromium
umroverPerception Apr 14, 2024
d3f9d14
Flip joint a sign
umroverPerception Apr 14, 2024
348304d
Allow joint B to work
umroverPerception Apr 14, 2024
e9f6919
Merge remote-tracking branch 'refs/remotes/origin/embedded' into embe…
umroverPerception Apr 14, 2024
01b40b5
Add inverted setting to config, this will break all CAN comms, so mak…
qhdwight Apr 16, 2024
f3dc871
Merge remote-tracking branch 'origin/integration' into embedded
qhdwight Apr 16, 2024
b784e9b
Remove velocity multiplier now that inverted is added
umroverPerception Apr 16, 2024
e5c1d56
Remove SA Translator
umroverPerception Apr 16, 2024
05bb653
Teleop
umroverPerception Apr 16, 2024
e913a3d
Make jetson_science
umroverPerception Apr 16, 2024
3f79af5
Make jetson science run
umroverPerception Apr 16, 2024
ec00766
Change SA limit switches
umroverPerception Apr 16, 2024
cca92fa
Push sa_z.cfg
umroverPerception Apr 16, 2024
ef93aa1
Update moteus for sa_z
umroverPerception Apr 17, 2024
ddb390a
Update torque for sa_z to 30
umroverPerception Apr 17, 2024
2ee20a4
Testing
umroverPerception Apr 17, 2024
e954326
Changes from testing
qhdwight Apr 17, 2024
62e1233
Merge remote-tracking branch 'origin/integration' into embedded
qhdwight Apr 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 32 additions & 34 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -143,42 +143,40 @@ target_link_libraries(lie PUBLIC MANIF::manif)

## ESW

if (NOT APPLE)
mrover_add_vendor_header_only_library(moteus deps/mjbots)
mrover_add_header_only_library(can_device src/esw/can_device)
mrover_add_library(motor_library src/esw/motor_library/*.cpp src/esw/motor_library)
target_link_libraries(motor_library PUBLIC can_device moteus)

if (NetLink_FOUND AND NetLinkRoute_FOUND)
mrover_add_nodelet(can_driver src/esw/can_driver/*.cpp src/esw/can_driver src/esw/can_driver/pch.hpp)
mrover_nodelet_link_libraries(can_driver ${NetLink_LIBRARIES} ${NetLinkRoute_LIBRARIES})
mrover_nodelet_include_directories(can_driver ${NetLink_INCLUDE_DIRS} ${NetLinkRoute_INCLUDE_DIRS})
endif ()

macro(mrover_add_esw_bridge_node name sources)
mrover_add_node(${name} ${sources})
target_link_libraries(${name} PRIVATE can_device motor_library)
endmacro()

mrover_add_esw_bridge_node(arm_hw_bridge src/esw/arm_hw_bridge/*.cpp)
mrover_add_esw_bridge_node(arm_translator_bridge src/esw/arm_translator_bridge/*.cpp src/esw/arm_translator_bridge/*.hpp)
mrover_add_esw_bridge_node(cache_bridge src/esw/cache_bridge/*.cpp)
mrover_add_esw_bridge_node(drive_bridge src/esw/drive_bridge/*.cpp)
mrover_add_esw_bridge_node(led_hw_bridge src/esw/led_hw_bridge/*.cpp)
mrover_add_esw_bridge_node(led src/esw/led/*.cpp)
mrover_add_esw_bridge_node(mast_gimbal_bridge src/esw/mast_gimbal_bridge/*.cpp)
mrover_add_esw_bridge_node(pdb_bridge src/esw/pdb_bridge/*.cpp)
mrover_add_esw_bridge_node(sa_hw_bridge src/esw/sa_hw_bridge/*.cpp)
mrover_add_esw_bridge_node(sa_translator_bridge src/esw/sa_translator_bridge/*.cpp)
mrover_add_esw_bridge_node(science_bridge src/esw/science_bridge/*.cpp)
mrover_add_esw_bridge_node(brushless_test_bridge src/esw/brushless_test_bridge/*.cpp motor_library)
mrover_add_esw_bridge_node(brushed_test_bridge src/esw/brushed_test_bridge/*.cpp)
mrover_add_esw_bridge_node(test_arm_bridge src/esw/test_arm_bridge/*.cpp)
mrover_add_esw_bridge_node(pdb_test_bridge src/esw/pdb_test_bridge/*.cpp)
mrover_add_esw_bridge_node(arm_position_test_bridge src/esw/arm_position_test_bridge/*.cpp)
# mrover_add_esw_bridge_node(sa_sensor src/esw/fw/dirt_sensor/dirt_sensor_ros/dirt_sensor_ros.ino)
mrover_add_vendor_header_only_library(moteus deps/mjbots)
mrover_add_header_only_library(can_device src/esw/can_device)
mrover_add_library(motor_library src/esw/motor_library/*.cpp src/esw/motor_library)
target_link_libraries(motor_library PUBLIC can_device moteus)

if (NetLink_FOUND AND NetLinkRoute_FOUND)
mrover_add_nodelet(can_driver src/esw/can_driver/*.cpp src/esw/can_driver src/esw/can_driver/pch.hpp)
mrover_nodelet_link_libraries(can_driver ${NetLink_LIBRARIES} ${NetLinkRoute_LIBRARIES})
mrover_nodelet_include_directories(can_driver ${NetLink_INCLUDE_DIRS} ${NetLinkRoute_INCLUDE_DIRS})
endif ()

macro(mrover_add_esw_bridge_node name sources)
mrover_add_node(${name} ${sources})
target_link_libraries(${name} PRIVATE can_device motor_library)
endmacro()

mrover_add_esw_bridge_node(arm_hw_bridge src/esw/arm_hw_bridge/*.cpp)
mrover_add_esw_bridge_node(arm_translator_bridge src/esw/arm_translator_bridge/*.cpp src/esw/arm_translator_bridge/*.hpp)
mrover_add_esw_bridge_node(cache_bridge src/esw/cache_bridge/*.cpp)
mrover_add_esw_bridge_node(drive_bridge src/esw/drive_bridge/*.cpp)
mrover_add_esw_bridge_node(led_hw_bridge src/esw/led_hw_bridge/*.cpp)
mrover_add_esw_bridge_node(led src/esw/led/*.cpp)
mrover_add_esw_bridge_node(mast_gimbal_bridge src/esw/mast_gimbal_bridge/*.cpp)
mrover_add_esw_bridge_node(pdb_bridge src/esw/pdb_bridge/*.cpp)
mrover_add_esw_bridge_node(sa_bridge src/esw/sa_bridge/*.cpp)
mrover_add_esw_bridge_node(science_bridge src/esw/science_bridge/*.cpp)
mrover_add_esw_bridge_node(brushless_test_bridge src/esw/brushless_test_bridge/*.cpp)
mrover_add_esw_bridge_node(brushed_test_bridge src/esw/brushed_test_bridge/*.cpp)
mrover_add_esw_bridge_node(science_test_bridge src/esw/science_test_bridge/*.cpp)
mrover_add_esw_bridge_node(test_arm_bridge src/esw/test_arm_bridge/*.cpp)
mrover_add_esw_bridge_node(pdb_test_bridge src/esw/pdb_test_bridge/*.cpp)
# mrover_add_esw_bridge_node(arm_position_test_bridge src/esw/arm_position_test_bridge/*.cpp)
# mrover_add_esw_bridge_node(sa_sensor src/esw/fw/dirt_sensor/dirt_sensor_ros/dirt_sensor_ros.ino)

## Perception

mrover_add_library(websocket_server src/esw/websocket_server/*.cpp src/esw/websocket_server)
Expand Down
8 changes: 4 additions & 4 deletions ansible/roles/jetson_build/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,17 +23,17 @@
state: latest
name:
- zstd # Required to unpack ZED installer
- cuda
- cuda-12-3
- nvidia-jetpack

- name: ZED SDK Download
get_url:
url: https://download.stereolabs.com/zedsdk/4.0/l4t35.4/jetsons
dest: /tmp/ZED_SDK_Tegra_L4T35.4_v4.0.7.zstd.run
url: https://download.stereolabs.com/zedsdk/4.1/l4t35.4/jetsons
dest: /tmp/ZED_SDK_Tegra_L4T35.4_v4.1.zstd.run
mode: 0755

- name: ZED SDK Install
# Silent mode prevents any user input prompting
command: /tmp/Downloads/ZED_SDK_Tegra_L4T35.4_v4.0.7.zstd.run -- silent
command: /tmp/Downloads/ZED_SDK_Tegra_L4T35.4_v4.1.zstd.run -- silent
args:
creates: /usr/local/zed
2 changes: 0 additions & 2 deletions ansible/roles/jetson_services/files/99-usb-serial.rules

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading
Loading