squashed commits from @rebelos

Signed-off-by: rebelos <theofficiallysonyrebel@gmail.com>