moved some random codes to here