improvments

several improvments