fixed even more stuffs in casting hell, will it work? ... :'(