All product names and/or logos are copyrights and trademarks of their respective owners. None of these owners has authorized, sponsored, endorsed, or approved this publication. The opinions expressed are those of the authors. The authors, publishers, and compilers have made the best efforts to produce a high quality, informative and helpful website, but they make no representation or warranties of any kind with regard to the completeness or accuracy of the contents of the material provided. They accept no liability of any kind for any losses or damages caused or alleged to be caused, directly or indirectly, from using information contained in this website nor from the use of various products. No part of this website may be stored in a retrieval system, transmitted, or reproduced in any way, including but not limited to digital copying and printing without the prior agreement and written permission of the editor.