Very first version with super hacky works